{"id":21832763,"url":"https://github.com/liying2008/easy-deployment","last_synced_at":"2025-10-08T05:32:09.765Z","repository":{"id":72797264,"uuid":"295063450","full_name":"liying2008/easy-deployment","owner":"liying2008","description":"A vscode extension for building and deploying your projects.","archived":false,"fork":false,"pushed_at":"2023-10-09T12:41:48.000Z","size":317,"stargazers_count":2,"open_issues_count":1,"forks_count":3,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-02T00:41:37.554Z","etag":null,"topics":["deploy","deployment","extension","ssh","typescript","vscode","vscode-extension"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/liying2008.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2020-09-13T02:31:03.000Z","updated_at":"2023-10-15T02:26:52.000Z","dependencies_parsed_at":"2025-01-26T09:27:58.341Z","dependency_job_id":"99418dbb-38c6-47dd-a6ec-2d132bafd26b","html_url":"https://github.com/liying2008/easy-deployment","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/liying2008/easy-deployment","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liying2008%2Feasy-deployment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liying2008%2Feasy-deployment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liying2008%2Feasy-deployment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liying2008%2Feasy-deployment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liying2008","download_url":"https://codeload.github.com/liying2008/easy-deployment/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liying2008%2Feasy-deployment/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278892196,"owners_count":26063949,"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","status":"online","status_checked_at":"2025-10-08T02:00:06.501Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["deploy","deployment","extension","ssh","typescript","vscode","vscode-extension"],"created_at":"2024-11-27T19:25:24.533Z","updated_at":"2025-10-08T05:32:09.295Z","avatar_url":"https://github.com/liying2008.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Easy Deployment \n\n[![Visual Studio Marketplace Version (including pre-releases)](https://img.shields.io/visual-studio-marketplace/v/liying.easy-deployment)](https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment)\n[![Visual Studio Marketplace Installs](https://img.shields.io/visual-studio-marketplace/i/liying.easy-deployment)](https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment)\n[![Visual Studio Marketplace Rating](https://img.shields.io/visual-studio-marketplace/r/liying.easy-deployment)](https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment)\n\n**Deploy your frontend project quickly and easily.**\n\n\n## Features\n\n- Select \"Build \u0026 Deploy\" to build your project and deploy it to a remote server. \n- Select \"Deploy Only\" to deploy your project build dist to the remote server.\n\n![Extension menus](https://raw.githubusercontent.com/liying2008/easy-deployment/master/pics/extension_commands.png)\n\nCommands in command palette:\n\n![Command palette](https://raw.githubusercontent.com/liying2008/easy-deployment/master/pics/command_palette.png)\n\n## Extension Settings\n\nTwo `settings.json` samples:\n\n- The **FIRST** way to use\n\n\u003e Select \"Build \u0026 Deploy\" to build project locally and upload dist to the remote server.\n\n```json\n{\n  \"easyDeployment.config\": {\n    \"configurations\": [\n      {\n        \"name\": \"dev\",\n        \"local\": {\n          \"projectPath\": \".\",\n          \"buildCmd\": \"yarn build\",\n          \"outputDir\": \"dist\"\n        },\n        \"remote\": {\n          \"deploymentPath\": \"~/nginx/html\",\n          \"backupOriginalFiles\": true,\n          \"backupTo\": \"~/backup\",\n          \"deleteOriginalFiles\": true\n        },\n        \"ssh\": {\n          \"host\": \"192.168.1.200\",\n          \"port\": 22,\n          \"username\": \"pi\",\n          \"privateKey\": \"~/.ssh/id_rsa\"\n        }\n      }\n    ]\n  }\n}\n```\n\n- The **SECOND** way to use\n\n\u003e Select \"Deploy Only\" to upload the project source code to the remote server and execute a script to build and deploy on the remote server.\n\n```json\n{\n  \"easyDeployment.config\": {\n    \"configurations\": [\n      {\n        \"name\": \"dev\",\n        \"local\": {\n          \"projectPath\": \".\",\n          \"outputDir\": \".\",\n          \"exclude\": [\"**/node_modules/**\", \"dist/**\"]\n        },\n        \"remote\": {\n          \"deploymentPath\": \"~/web/projects/demo\",\n          \"deleteOriginalFiles\": true,\n          \"postCmd\": \"bash ./build_and_deploy.sh\"\n        },\n        \"ssh\": {\n          \"host\": \"192.168.1.200\",\n          \"port\": 22,\n          \"username\": \"pi\",\n          \"privateKey\": \"~/.ssh/id_rsa\"\n        }\n      }\n    ]\n  }\n}\n```\n\n**Details for each configuration item are as follows:**\n\n* `local` configuration (Configuration of local project):\n\n  |  Key           | Defaults | Required | Description  |\n  |  ----          | ----     | ----     | ----         |\n  | `projectPath`  | .        | √        | Project root path (relative path) |\n  | `buildCmd`     |          |          | Build command for local project |\n  | `outputDir`    | dist     | √        | Compiled product output path. (path relative to the projectPath) |\n  | `exclude`      | []       |          | Files excluded on deployment. (path pattern relative to the outputDir) |\n\n* `remote` configuration (Configuration of remote server):\n\n  |  Key                  | Defaults | Required | Description  |\n  |  ----                 | ----     | ----     | ----         |\n  | `deploymentPath`      |          | √        | Remote deployment path. (must be an absolute path) |\n  | `backupOriginalFiles` | false    |          | Do you need to back up the original files? |\n  | `backupTo`            | ~/backup |          | Backup path of the original files. (must be an absolute path) |\n  | `deleteOriginalFiles` | false    |          | Do you need to delete the original files? |\n  | `postCmd`             |          |          | Command executed after deployment |\n\n* `ssh` configuration (SSH configuration for connecting to remote server):\n\n  |  Key         | Defaults | Required | Description |\n  |  ----        | ----     | ----     | ----        |\n  | `host`       |          | √        | Hostname or IP address of the server |\n  | `port`       | 22       | √        | Port number of the server |\n  | `username`   |          | √        | Username for authentication |\n  | `password`   |          |          | Password for password-based user authentication |\n  | `privateKey` |          |          | Private key (absolute path) for either key-based or hostbased user authentication (OpenSSH format)  |\n  | `passphrase` |          |          | For an encrypted private key, this is the passphrase used to decrypt it. |\n\n**Note:**\n\n* Please set it according to your actual needs.\n* You can choose between `password` and `privateKey` in the ssh configuration.\n* If you use `privateKey`, remember to put the local ssh public key into the server's `authorized_keys` file.\n* If you use `privateKey` and the `privateKey` is encrypted, fill in the `passphrase` field.\n* The remote server needs to be a **Linux** machine.\n* There can be multiple configurations in the outer configurations, and the `name` attribute cannot be repeated.\n\n\n## Quick Start\n\n- Install [Easy Deployment](https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment).\n- Configure `easyDeployment.config` in `settings.json` in the workspace.\n- Right click in Explorer and select `Build \u0026 Deploy` or `Deploy Only`.\n\n\n## Thanks\n\n- [archiverjs/node-archiver](https://github.com/archiverjs/node-archiver)\n- [steelbrain/node-ssh](https://github.com/steelbrain/node-ssh)\n\n\n## Source Code\n\n[https://github.com/liying2008/easy-deployment](https://github.com/liying2008/easy-deployment)\n\nBinary package can be obtained from [this link.](https://marketplace.visualstudio.com/items?itemName=liying.easy-deployment)\n\n\n## License\n\nMIT © [Li Ying](https://github.com/liying2008) \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliying2008%2Feasy-deployment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliying2008%2Feasy-deployment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliying2008%2Feasy-deployment/lists"}