{"id":43052649,"url":"https://github.com/cloud-native-toolkit/ibm-garage-cloud-cli","last_synced_at":"2026-01-31T10:38:12.627Z","repository":{"id":37076327,"uuid":"215867112","full_name":"cloud-native-toolkit/ibm-garage-cloud-cli","owner":"cloud-native-toolkit","description":"Command-line utility to help with the end-to-end cloud native development process","archived":false,"fork":false,"pushed_at":"2024-11-27T03:21:48.000Z","size":5320,"stargazers_count":15,"open_issues_count":262,"forks_count":8,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-10-03T22:32:14.801Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloud-native-toolkit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-17T19:10:11.000Z","updated_at":"2025-04-09T10:14:52.000Z","dependencies_parsed_at":"2024-06-19T20:07:07.783Z","dependency_job_id":"bd28661b-ac55-439e-9c38-bddfdcf427d3","html_url":"https://github.com/cloud-native-toolkit/ibm-garage-cloud-cli","commit_stats":null,"previous_names":["ibm-garage-cloud/ibm-garage-cloud-cli"],"tags_count":491,"template":false,"template_full_name":null,"purl":"pkg:github/cloud-native-toolkit/ibm-garage-cloud-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-native-toolkit%2Fibm-garage-cloud-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-native-toolkit%2Fibm-garage-cloud-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-native-toolkit%2Fibm-garage-cloud-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-native-toolkit%2Fibm-garage-cloud-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloud-native-toolkit","download_url":"https://codeload.github.com/cloud-native-toolkit/ibm-garage-cloud-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-native-toolkit%2Fibm-garage-cloud-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28938835,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T10:18:23.202Z","status":"ssl_error","status_checked_at":"2026-01-31T10:18:22.693Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-31T10:38:11.936Z","updated_at":"2026-01-31T10:38:12.603Z","avatar_url":"https://github.com/cloud-native-toolkit.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IBM Garage Cloud Native Toolkit CLI\n\nCommand-line tool to simplify activities related to working with cloud environments.\n\n## Installation\n\n### Install the binary\n\nTo install the latest version of igc into `/usr/local/bin`, run the following:\n\n```shell\ncurl -sL https://cli.cloudnativetoolkit.dev/install.sh | sh\n```\n\nIf you would like to install a different version of the CLI and/or put it in a different directory, use the following:\n\n```shell\ncurl -sL https://cli.cloudnativetoolkit.dev/install.sh | RELEASE=1.32.0 DEST_DIR=~/bin sh\n```\n\n### Install via NPM\n\nInstall the latest CLI by running:\n\n    ```\n    npm i -g @ibmgaragecloud/cloud-native-toolkit-cli\n    ```\n\n    **Note:** If you had previously installed the cli from @garagecatalyst, you will need to remove it first:\n\n    ```\n    npm rm -g @garage-catalyst/ibm-garage-cloud-cli\n    ```\n\n### Beta release\n\nRelease candidate commands are made available for early use and testing via the beta release\nof the CLI. The beta release of the CLI can be installed by running:\n\n```\nnpm i -g @ibmgaragecloud/cloud-native-toolkit-cli@beta\n```\n\nTo return to the non-beta version of the cli, simply run:\n\n```\nnpm i -g @ibmgaragecloud/cloud-native-toolkit-cli\n```\n\n## Usage\n\nRun the following to list the available commands:\n\n    ```\n    igc --help\n    ```\n\n## Available commands\n\n### vlan\n\nLists the `vlans` for a particular `resource group` and `region`. The command\nexpects that an `ibmcloud login` has already been performed to set up the\nenvironment.\n\n### dashboard\n\nOpens the Developer Dashboard in the default browser. The namespace where the dashboard has been\ndeployed can be provided with the `-n` flag. If not provided, `tools` will be used as the default.\nIf a default browser has not been configured then the url to the Dashboard will be printed out.\n\n**Example usage**\n\n```bash\nigc dashboard\n```\n\n### credentials\n\nPrints the urls and credentials for the Cloud Native Toolkit tools deployed into the cluster. The\ncommand works by reading particular `ConfigMaps` and `Secrets` in a template namespace in the cluster\nthat identify the tools. The template namespace is provided by using the `-n` flag. If not provided,\nthe template namespace defaults to `tools`. The tools reported include Jenkins, SonarQube, ArgoCD, etc.\n\nThe command expect that the cluster login has already been performed.\n\n**Example usage**\n\n```bash\nigc credentials -n my-namespace\n```\n\n- lists the tools urls and credentials from the `my-namespace` namespace\n\n### endpoints\n\nLists the ingress and/or route urls for the provided namespace. The namespace is provided\nwith the `-n` flag. If no namespace is provided, `dev` is used as the default. The results are\nprovided in an interactive menu. If one of the endpoints is selected it will display the url and\nlaunch it in the default browser. Selecting `Exit` will display the full list and exit.\n\nThe command expect that the cluster login has already been performed.\n\n**Example usage**\n\n```bash\nigc endpoint -n tools\n```\n\n- lists the ingresses and routes in the `tools` namespace\n\n### namespace\n\nCreates a namespace (if it doesn't exist) and prepares it for use by copying in\npull secrets from the default namespace and config maps and secrets from the\ntemplate namespace (defaults to `tools` if not provided). The template namespace\ncan be provided with the `-t` flag. When run against OpenShift, this command will\nactually create a `project` which will result in the creation of a namespace as well.\n\nThe `namespace` command will also add the pull secrets to a serviceAccount. The name\nof the service account can be provided with the `-z` flag. If not provided then `default`\nwill be used.\n\nOptionally, the namespace command can also set up the Jenkins environment and/or Tekton\nenvironment through the use of the `--jenkins` flag and `--tekton` flag. When provided,\nthe `--jenkins` flag will install Jenkins into the namespace (only available on OpenShift)\nand set up the Jenkins serviceAccount. The `--tekton` flag will copy the available Tasks\nand Pipelines from the template namespace (defaults to `tools` if not provided).\n\nThe command expect that the cluster login has already been performed.\n\n**Example usage**\n\n```bash\nigc namespace my-namespace\n```\n\n- Creates the namespace `my-namespace` and updates the `default` service account in\nthat namespace\n\n```bash\nigc namespace another-namespace -z my-sa --jenkins\n```\n\n- Creates the namespace `another-namespace` and the service account `my-sa` as\nwell as configuring the Jenkins environment\n\n```bash\nigc namespace last-namespace -t my-tools --tekton\n```\n\n- Creates the namespace `last-namespace` and updates the `default` service account\nas well as configuring the Tekton Tasks and Pipelines using `my-tools` as the template\nnamespace\n\n### pipeline\n\nRegisters a project as a Jenkins or Tekton pipeline by creating a Secret to hold\nthe Git authentication information, calling the Jenkins API or applying the appropriate\nconfiguration yaml, creating a web-hook to trigger the pipeline when changes are pushed,\nand triggering the initial build.\n\n**Note:** This command is intended to be run within the repository directory of a project for\nwhich a pipeline should be generated.\n\nBy default the pipeline deploys into the `dev` namespace. The namespace can be changed by passing\nit in using the `-n` flag. If the target namespace does not exist, the command will fail with a\nmessage to create the namespace using `igc namepace`\n\nThe pipeline command supports either `jenkins` or `tekton` pipelines using the flags:\n\n- --jenkins or\n- --tekton\n\nA default pipeline type has not been set. If neither of the flags is provided then a prompt will\nbe shown to select one.\n\nThe command will prompt for the username and personal access token that should stored in\nthe secret to access the Git repository. Those values can be provided a the command-line using the\n`-u` and `-p` flags, respectively.\n\n**Example usage**\n\n```bash\nigc pipeline --jenkins\n```\n\n- Creates a Jenkins pipeline in the `dev` namespace and will prompt for the git credentials.\n\n```bash\nigc pipeline -n my-dev -u gituser -p gitpat --tekton\n```\n\n- Creates a Tekton pipeline in the existing `my-dev` namespace and uses `gituser` and `gitpat`\nfor the git credentials\n\n### tool-config\n\nConfigures a tool into the template namespace. The template namespace is provided with the `-n`\nargument. If not provided, the template namespace will be `tools`. The tool-config takes the\nname of the tool as the first (and only) positional parameter.\n\nConfiguration for the tool\ncan be provided with the `--url`, `--username`, and `--password` optional flags. If the `url`\nis provided then a ConfigMap will be created. If the `username` and/or `password` are provided\nthen a Secret will be created,\n\n**Example usage**\n\n```bash\nigc tool-config my-tool --url https://url.com/my-tool --username admin --password password\n```\n\n- configures a tool named `my-tool` with url `https://url.com/my-tool`, username of `admin`, and\npassword of `password`\n\n### enable\n\n\"Enables\" an existing project with the DevOps artifacts. The CLI reads the\n list of\n available pipelines and applies the selected pipeline to your code repo. This\n  command is\n  intended to be run within a git repository directory of a project for\nwhich a pipeline should be enabled.\n```bash\nigc enable\n```\n\nOnce the project has been enabled you will need to run `igc pipeline` to\n register the git repo as a pipeline with your target development cluster.\n\nThe `enable` command adds a number of files to the local filesystem, including but not limited to:\n\n- Helm chart\n- Jenkinsfile\n\nAfter `enable` is called, the generated files should be committed and pushed to the git repository.\n\nThe default pipeline repo is `https://cloud-native-toolkit.github.io/garage-pipelines/`, but a different one can be used by providing the `--repo` argument.  The source for the provided pipeline repo can be found at `https://github.com/ibm-garage-cloud/garage-pipelines` to use as a template.\n\n## Development\n\n### Run the tests\n\n```bash\nnpm test\n```\n\n### Run the cli locally, this will run the `prestart` which builds the typscript\n\n```bash\nnpm start\n```\n\n### Run the cli locally without building first\n\n```bash\nnpm run igc\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloud-native-toolkit%2Fibm-garage-cloud-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloud-native-toolkit%2Fibm-garage-cloud-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloud-native-toolkit%2Fibm-garage-cloud-cli/lists"}