Skip to content

Conversation

yago-123
Copy link

@yago-123 yago-123 commented Sep 3, 2025

Description

This PR onboards the new STACKIT Intake (ticket) service into the CLI.

Intake is composed of three components:

  • Intake Runners: dedicated, isolated runtime data ingestion environment
  • Intakes: a specific data stream or topic within an Intake Runner
  • Intake Users: provides secure access credentials for your applications to connect to your Intake

This PR contains the Intake Runners part only to make a quicker and less overwhelming review. The remaining code (2/3) can be submitted as part of this PR once the first batch has been reviewed/approved or we can open a different PR for it (as the maintainer please).

The commands are designed to work as follows:

$ stackit-cli beta intake runner create ... 
$ stackit-cli beta intake create ... 
$ stackit-cli beta intake user create... 

Most customers will use intakes hence why we decided to go with this command structure. The folder structure will look like the following due to the hierachy desired:

$ ls stackit-cli/internal/cmd/intake
common    
instance    # command for intakes 
intake.go        
runner   
user  

Checklist

  • Issue was linked above
  • Code format was applied: make fmt
  • Examples were added / adjusted (see e.g. here)
  • Docs are up-to-date: make generate-docs (will be checked by CI)
  • Unit tests got implemented or updated
  • Unit tests are passing: make test (will be checked by CI)
  • No linter issues: make lint (will be checked by CI)

@yago-123 yago-123 requested a review from a team as a code owner September 3, 2025 08:34
@yago-123
Copy link
Author

yago-123 commented Sep 3, 2025

Sample CLI usage:

% ./bin/stackit intake runner create --display-name "runner-example" --max-message-size-kib 1024 --max-messages-per-hour 1000 --project-id xxx
Are you sure you want to create an Intake Runner for project "STACKIT Intake PROD"? [y/N] y
Created Intake Runner for project "STACKIT Intake PROD". Runner ID: yyy

% ./bin/stackit intake runner describe yyy  --project-id xxx                                                 
 
 ATTRIBUTE              │ VALUE                                                                 
────────────────────────┼───────────────────────────────────────────────────────────────────────
 ID                     │ yyy                                  
 Name                   │ runner-example                                                        
 Description            │                                                                       
 Max Message Size (KiB) │ 1024                                                                  
 Max Messages/Hour      │ 1000                                                                  
 Ingestion URI          │ yyy.intake.eu01.onstackit.cloud:9094 
 
% ./bin/stackit intake runner list  --project-id xxx          
 
 ID                                   │ NAME           
──────────────────────────────────────┼────────────────
 aaa  │ testyago       
 bbb │ runner1        
 zzz │ mytestrunner   
 ddd │ runner-example 
 fff │ runner1        
 yyy │ test-yago      
 
% ./bin/stackit intake runner update yyy --display-name runner-updated  --project-id xxx
Update request for Intake Runner "yyy" sent successfully.

% ./bin/stackit intake runner delete yyy  --project-id xxx                           
Are you sure you want to delete Intake Runner "yyy"? [y/N] y
Deletion request for Intake Runner "yyy" sent successfully.

@rubenhoenle rubenhoenle added the needs-work PR needs work from author. label Sep 4, 2025
@yago-123 yago-123 requested a review from rubenhoenle September 8, 2025 10:57
@yago-123 yago-123 force-pushed the yg/onboard-intake branch 2 times, most recently from 732eff1 to 669dbb9 Compare September 15, 2025 15:21
@yago-123
Copy link
Author

PS: notice that I messed up the branch by mistake, I had to cherry-pick until 7868e56 (last commit reviewed) and force push.

rubenhoenle
rubenhoenle previously approved these changes Sep 19, 2025
@rubenhoenle
Copy link
Member

Rest looks good to me. :)

Copy link

github-actions bot commented Oct 3, 2025

This PR was marked as stale after 7 days of inactivity and will be closed after another 7 days of further inactivity. If this PR should be kept open, just add a comment, remove the stale label or push new commits to it.

@github-actions github-actions bot added the Stale label Oct 3, 2025
@yago-123
Copy link
Author

yago-123 commented Oct 3, 2025

keep PR open

@github-actions github-actions bot removed the Stale label Oct 4, 2025
rubenhoenle
rubenhoenle previously approved these changes Oct 6, 2025
Copy link
Member

@rubenhoenle rubenhoenle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please check the failing CI pipeline

@yago-123 yago-123 requested a review from rubenhoenle October 9, 2025 12:01
@yago-123
Copy link
Author

yago-123 commented Oct 9, 2025

@rubenhoenle I think everything has been adjusted based on your feedback🙏🙏🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-work PR needs work from author. waiting-for-author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants