Skip to content

Conversation

@afalahi
Copy link

@afalahi afalahi commented Aug 11, 2025

New Features:

  • AWS SSO Integration: Complete AWS Single Sign-On integration with automatic profile creation for AWS permission sets
  • AWS Credentials Command: New aws-credentials command to retrieve temporary AWS credentials using SSO
  • AWS Configuration Commands: New config-aws command suite for managing SSO settings and integration modes
  • Alias Generation: New generate-alias command for bulk generating entitlement aliases with multiple naming schemas
  • Enhanced Search: Improved search functionality with better query handling and result filtering

Configuration & Management:

  • AWS Integration Modes: Support for both "cone" and "native" AWS integration modes with automatic profile management

CLI Improvements:

  • Streamlined Architecture: Refactored command structure using centralized root command pattern

afalahi added 27 commits August 11, 2025 16:40
…WS SSO

This commit introduces a new command `aws-credentials` that allows users to obtain AWS temporary credentials for a specified profile. The command verifies user access, reads the AWS configuration, and retrieves credentials via the AWS SSO API. It includes error handling for various scenarios, such as missing configurations and access denials, and outputs the credentials in JSON format.
This commit introduces the root command for the Cone CLI, which interacts with the ConductorOne API to manage access to entitlements. It includes persistent flags for configuration options such as profile, client ID, and output format, as well as various subcommands for managing tasks, user information, and AWS credentials.
This commit introduces the `config-aws` command for managing AWS SSO settings, including subcommands to set and get the AWS SSO start URL. The command names have been updated for clarity and consistency, enhancing the user experience for AWS credential management and permission set operations.
This commit introduces the `generate-alias` command for the Cone CLI, enabling users to generate aliases for entitlements in ConductorOne. The command supports various alias schemas and includes options for filtering entitlements, customizing formats, and previewing changes. It also provides progress updates and a summary of the alias generation process, enhancing the management of entitlement aliases.
This commit enhances the `handleWaitBehavior` function to manage AWS-specific actions upon successful entitlement grants. It checks if the entitlement is an AWS permission set and attempts to create an AWS SSO profile for the user. Additionally, it corrects a typo in the success message for entitlement revocation.
This commit simplifies the command initialization in the Cone CLI by consolidating the command setup into a single function, `rootCmd()`. It retains the versioning and context management while removing redundant persistent flags and command additions, streamlining the code for better maintainability.
This commit updates the `search` command in the Cone CLI to provide a more detailed description and usage instructions. It introduces a two-phase search mechanism that first attempts to find entitlements by exact alias match, followed by a query search if no matches are found. Additionally, it allows for combined searches using both alias and query, and defaults to showing all entitlements if no filters are applied. These changes improve the command's usability and functionality for users searching for entitlements in ConductorOne.
This commit improves the `runApproveTasks` function by adding detailed logging for the task approval process. It retrieves task and entitlement details, checks for AWS permission sets, and attempts to create an AWS SSO profile if applicable. Warnings are logged for any failures in fetching resource type or resource details, enhancing the user experience and debugging capabilities during task approvals.
This commit updates the `search` command in the Cone CLI to provide a more comprehensive description and usage instructions. It details the various filters available for searching tasks, including task type, state, and specific access reviews. The enhancements improve the command's usability and clarity for users searching for tasks in ConductorOne.
This commit updates the `token` command in the Cone CLI to provide a clear description and detailed usage instructions. It explains the purpose of obtaining a ConductorOne API access token using OAuth2 client credentials flow, highlighting its utility for debugging, verification, and API calls. The addition of the `--raw` flag allows users to retrieve the bearer token without formatting, improving the command's usability and clarity.
This commit introduces the `UpdateEntitlement` method to the `C1Client` interface, allowing for the updating of app entitlements. This addition enhances the client functionality by enabling modifications to existing entitlements, improving the overall capability of the Cone CLI in managing app permissions.
This commit implements the `UpdateEntitlement` method in the client, enabling updates to existing app entitlements. This enhancement improves the functionality of the client by allowing modifications to entitlements, thereby increasing the overall capability of the Cone CLI in managing app permissions.
This commit introduces two new functions: `IsAWSPermissionSet` to validate AWS permission sets based on entitlement and resource type, and `CreateAWSSSOProfile` to create an AWS SSO profile for a permission set. The new functionality includes error handling for missing parameters and checks for existing profiles, enhancing the management of AWS SSO configurations within the Cone CLI.
This commit modifies the wording of several warning messages in the `get_drop_task.go` file to ensure consistent capitalization and phrasing. The changes enhance the clarity and professionalism of user prompts within the Cone CLI.
This commit updates the `aws_credentials.go` file by correcting the capitalization of `AccessKeyId` to `AccessKeyID` for consistency. Additionally, it enhances the documentation comments throughout the file, ensuring they are complete and consistent in style. These changes improve code clarity and maintainability within the Cone CLI.
This commit updates the AWS SSO commands in the Cone CLI by refining the command descriptions for clarity and consistency. It introduces the `pterm` package for improved user feedback, replacing standard print statements with styled output for setting and retrieving the AWS SSO start URL. Additionally, it enforces argument validation for the `set-sso-url` command, ensuring a URL is provided. These changes enhance the overall user experience and maintainability of the AWS configuration commands.
This commit improves the documentation comments in the `generate_alias.go` file by ensuring consistency in punctuation and clarity. Additionally, it replaces standard print statements with styled output using the `pterm` package for better user feedback during the alias generation process. These changes enhance code readability and user experience within the Cone CLI.
This commit enhances the error handling in the `handleWaitBehavior` function by returning errors instead of nil for failed operations. Additionally, it improves the documentation comments for clarity and consistency, ensuring that the purpose and behavior of the function are clearly communicated. These changes enhance code reliability and maintainability within the Cone CLI.
…ogging

This commit updates the `task_approve_deny.go` file by replacing standard print statements with styled output using the `pterm` package for better user feedback during the task approval process. It also refactors the task type handling logic for clarity and introduces improved logging for various stages of the approval workflow. These changes enhance the overall user experience and maintainability of the task management functionality within the Cone CLI.
This commit updates the documentation comments in the `task.go` file, specifically enhancing the comment for the `CreateAWSSSOProfile` function by adding a period for consistency. Additionally, it refines the conditional check for `resource.DisplayName` to ensure it is not nil before accessing it. These changes improve code readability and maintainability within the Cone CLI.
…nd. This cleanup enhances the command structure by eliminating unnecessary commands, improving maintainability and clarity in the command hierarchy.
This commit introduces the `createAWSSSOProfileIfNeeded` function to create an AWS SSO profile when an entitlement is an AWS permission set. Additionally, it refactors the `handleWaitBehavior` function to manage task completion states more effectively, providing user feedback on the outcome of entitlement requests. These enhancements improve the overall functionality and user experience within the Cone CLI.
This commit updates the `CreateAWSSSOProfile` function to replace standard error messages with styled output using the `pterm` package, improving user feedback when an AWS profile already exists. Additionally, it adds a success message upon successful profile creation, enhancing the overall user experience within the Cone CLI.
This commit introduces new commands to manage AWS integration mode within the Cone CLI. It adds `set-integration-mode` and `get-integration-mode` commands for setting and retrieving the current integration mode (cone or native). Additionally, a `show` command is implemented to display all AWS configuration settings, including the SSO start URL and integration mode, enhancing user feedback and configurability in the CLI.
This commit introduces a check for the AWS integration mode within the CreateAWSSSOProfile function. If the integration mode is set to "native," the function will return early without creating a profile. The default mode is set to "cone" if not specified, enhancing the flexibility and configurability of AWS SSO profile creation in the Cone CLI.
…egration mode

This commit introduces a new `--raw` flag to the `show` command, allowing users to display the raw YAML content of the AWS configuration file. Additionally, the default integration mode is changed from "cone" to "native" for improved clarity and consistency in the CLI's behavior. These enhancements provide users with more flexibility and better feedback regarding their AWS configuration settings.
…e function

This commit changes the default integration mode from 'cone' to 'native' in the CreateAWSSSOProfile function, enhancing clarity and consistency in the AWS SSO profile creation process. This adjustment aligns with recent updates to improve user experience and configurability within the Cone CLI.
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

…ation to use SafeWriteConfig; enhance admin permission verification and add detailed entitlement info display
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@robert-chiniquy
Copy link
Contributor

Eventually my intention is to break this up into multiple PRs

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants