{"id":16364994,"url":"https://github.com/marcqualie/ecsx","last_synced_at":"2025-06-11T02:05:11.874Z","repository":{"id":39855344,"uuid":"366532764","full_name":"marcqualie/ecsx","owner":"marcqualie","description":"Easily create, manage and deploy ECS based applications","archived":false,"fork":false,"pushed_at":"2023-09-27T21:32:03.000Z","size":623,"stargazers_count":8,"open_issues_count":23,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-11T02:05:10.073Z","etag":null,"topics":["aws","docker","ecs","hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcqualie.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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":"2021-05-11T22:57:33.000Z","updated_at":"2025-02-03T23:29:05.000Z","dependencies_parsed_at":"2024-10-11T02:33:09.138Z","dependency_job_id":"6576718f-86e8-4895-a286-e503eeb460b4","html_url":"https://github.com/marcqualie/ecsx","commit_stats":{"total_commits":117,"total_committers":4,"mean_commits":29.25,"dds":"0.16239316239316237","last_synced_commit":"f21f41a4786443caf14e9a6db73bd98091e81136"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcqualie%2Fecsx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcqualie%2Fecsx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcqualie%2Fecsx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcqualie%2Fecsx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcqualie","download_url":"https://codeload.github.com/marcqualie/ecsx/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcqualie%2Fecsx/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259184736,"owners_count":22818266,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["aws","docker","ecs","hacktoberfest"],"created_at":"2024-10-11T02:33:06.673Z","updated_at":"2025-06-11T02:05:11.854Z","avatar_url":"https://github.com/marcqualie.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"ecsx\n====\n\nEasily create, manage and deploy ECS based applications\n\n[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)\n[![Version](https://img.shields.io/npm/v/ecsx.svg)](https://npmjs.org/package/ecsx)\n[![Downloads/week](https://img.shields.io/npm/dw/ecsx.svg)](https://npmjs.org/package/ecsx)\n[![License](https://img.shields.io/npm/l/ecsx.svg)](https://github.com/marcqualie/ecsx/blob/master/package.json)\n\n\u003c!-- toc --\u003e\n* [Usage](#usage)\n* [Commands](#commands)\n\u003c!-- tocstop --\u003e\n# Usage\n\u003c!-- usage --\u003e\n```sh-session\n$ npm install -g ecsx\n$ ecsx COMMAND\nrunning command...\n$ ecsx (-v|--version|version)\necsx/0.8.2 darwin-x64 node-v18.8.0\n$ ecsx --help [COMMAND]\nUSAGE\n  $ ecsx COMMAND\n...\n```\n\u003c!-- usagestop --\u003e\n# Commands\n\u003c!-- commands --\u003e\n* [`ecsx config`](#ecsx-config)\n* [`ecsx console [COMMAND]`](#ecsx-console-command)\n* [`ecsx delete TASKNAME`](#ecsx-delete-taskname)\n* [`ecsx deploy TASKNAME`](#ecsx-deploy-taskname)\n* [`ecsx help [COMMAND]`](#ecsx-help-command)\n* [`ecsx list-clusters`](#ecsx-list-clusters)\n* [`ecsx ps`](#ecsx-ps)\n* [`ecsx run TASKNAME`](#ecsx-run-taskname)\n* [`ecsx scale TASKNAME COUNT`](#ecsx-scale-taskname-count)\n* [`ecsx verify-config [CONFIGPATH]`](#ecsx-verify-config-configpath)\n\n## `ecsx config`\n\nPrint out current configuration\n\n```\nUSAGE\n  $ ecsx config\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n  --taskName=taskName\n  --var=var                    [default: ]\n```\n\n_See code: [src/commands/config.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/config.ts)_\n\n## `ecsx console [COMMAND]`\n\nLaunch a temporary interactive container\n\n```\nUSAGE\n  $ ecsx console [COMMAND]\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n```\n\n_See code: [src/commands/console.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/console.ts)_\n\n## `ecsx delete TASKNAME`\n\nRemove a service/task from a cluster\n\n```\nUSAGE\n  $ ecsx delete TASKNAME\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n  --force\n```\n\n_See code: [src/commands/delete.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/delete.ts)_\n\n## `ecsx deploy TASKNAME`\n\nCreate a task definition then deploy it as a service\n\n```\nUSAGE\n  $ ecsx deploy TASKNAME\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n  -t, --dockerTag=dockerTag    (required)\n  --var=var                    [default: ]\n```\n\n_See code: [src/commands/deploy.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/deploy.ts)_\n\n## `ecsx help [COMMAND]`\n\nDisplay help for ecsx.\n\n```\nUSAGE\n  $ ecsx help [COMMAND]\n\nARGUMENTS\n  COMMAND  Command to show help for.\n\nOPTIONS\n  -n, --nested-commands  Include all nested commands in the output.\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v5.1.22/src/commands/help.ts)_\n\n## `ecsx list-clusters`\n\nShow running services within a cluster\n\n```\nUSAGE\n  $ ecsx list-clusters\n\nOPTIONS\n  -h, --help  Show CLI help.\n```\n\n_See code: [src/commands/list-clusters.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/list-clusters.ts)_\n\n## `ecsx ps`\n\nShow running services within a cluster\n\n```\nUSAGE\n  $ ecsx ps\n\nOPTIONS\n  -c, --clusterKey=clusterKey  Name of the cluster key from the config\n  -h, --help                   Show CLI help.\n  --showTasks                  Show recent tasks\n```\n\n_See code: [src/commands/ps.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/ps.ts)_\n\n## `ecsx run TASKNAME`\n\nRun a one off task on the cluster\n\n```\nUSAGE\n  $ ecsx run TASKNAME\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n  -t, --dockerTag=dockerTag    (required)\n  --var=var                    [default: ]\n```\n\n_See code: [src/commands/run.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/run.ts)_\n\n## `ecsx scale TASKNAME COUNT`\n\nScale services up or down to the desired count\n\n```\nUSAGE\n  $ ecsx scale TASKNAME COUNT\n\nOPTIONS\n  -c, --clusterKey=clusterKey  (required)\n  -h, --help                   Show CLI help.\n```\n\n_See code: [src/commands/scale.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/scale.ts)_\n\n## `ecsx verify-config [CONFIGPATH]`\n\nScale services up or down to the desired count\n\n```\nUSAGE\n  $ ecsx verify-config [CONFIGPATH]\n\nOPTIONS\n  -h, --help  Show CLI help.\n```\n\n_See code: [src/commands/verify-config.ts](https://github.com/marcqualie/ecsx/blob/v0.8.2/src/commands/verify-config.ts)_\n\u003c!-- commandsstop --\u003e\n\n\n\n## AWS Systems Session Manager\n\nIn order to use the `console` command, you need to have [AWS System Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) installed on your local system.\n\n\n### MacOS Quick Start\n\nThese commands are taken from the [full documentation](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html#install-plugin-macos). You can find information on how to install on other platforms there as well.\n\n```shell\ncurl \"https://s3.amazonaws.com/session-manager-downloads/plugin/latest/mac/sessionmanager-bundle.zip\" -o \"sessionmanager-bundle.zip\"\nunzip sessionmanager-bundle.zip\nsudo ./sessionmanager-bundle/install -i /usr/local/sessionmanagerplugin -b /usr/local/bin/session-manager-plugin\n```\n\n\n\n## Publishing\n\nTo publish to npm:\n\n```shell\nyarn test # to verify everything works\nyarn build # to ensure the projcet builds properly and outputs\n```\n\nThen, manually bump version in `package.json`. Once the version is updated:\n\n```shell\nyarn oclif-dev readme # updates the readme with new version\ngit commit -am \"release v1.2.3\"\ngit tag v1.2.3\ngit push \u0026\u0026 git push --tags\nnpm publish\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcqualie%2Fecsx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcqualie%2Fecsx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcqualie%2Fecsx/lists"}