{"id":20779222,"url":"https://github.com/bolt/simple-deploy","last_synced_at":"2025-04-30T19:41:20.323Z","repository":{"id":56951126,"uuid":"100286449","full_name":"bolt/simple-deploy","owner":"bolt","description":null,"archived":false,"fork":false,"pushed_at":"2019-02-09T14:54:41.000Z","size":39,"stargazers_count":8,"open_issues_count":3,"forks_count":3,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-24T11:41:49.774Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","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/bolt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-08-14T16:12:29.000Z","updated_at":"2023-11-11T09:59:36.000Z","dependencies_parsed_at":"2022-08-21T09:20:29.704Z","dependency_job_id":null,"html_url":"https://github.com/bolt/simple-deploy","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bolt%2Fsimple-deploy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bolt%2Fsimple-deploy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bolt%2Fsimple-deploy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bolt%2Fsimple-deploy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bolt","download_url":"https://codeload.github.com/bolt/simple-deploy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251770960,"owners_count":21641180,"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":[],"created_at":"2024-11-17T13:26:39.720Z","updated_at":"2025-04-30T19:41:20.296Z","avatar_url":"https://github.com/bolt.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"Bolt Simple Deploy Tool\n=======================\n\nTo use this tool, on your development machine **only** you can create a file\nnamed `.deploy.yml`.\n\nEach key in the `.deploy.yml` represents a deployment target that can be\nuploaded to via either FTP or SFTP (secure FTP).\n\nEvery deployment configuration you add to `.deploy.yml` must set the `protocol`\nto either `ftp` or `sftp`, and an `options` array.\n\n**NOTE:** If your host provides SFTP, it is the preferred upload method as it\nis both faster and more secure than FTP alone, and supports more functionality.\n\n\nCommand Usage\n-------------\n\n```\n    php app/nut setup:deploy [options] \u003ctarget\u003e\n```\n\n\n### Arguments\n\n| Value  | Description |\n| ------ | ----------- |\n| target | Name of the deployment setting to use from .deploy.yml\n\n\n### Options\n\n| Value   | Description |\n| ------  | ----------- |\n| --check | Only check the connection settings for a given deployment\n| --edit  | Interactively create or edit a deployment configuration\n\n\n### Example: Editing or creating a connection\n\n```\n    php app/nut setup:deploy --edit production\n```\n\n\n### Example: Checking a connection\n\n```\n    php app/nut setup:deploy --check production\n```\n\n\n### Example: Running a deployment\n\n```\n    php app/nut setup:deploy production\n```\n\n\nConfiguration File\n------------------\n\nConfiguration is done in a `.deploy.yml` file in the site's root directory on\nyour development environment, with the following format:\n\n```\nstaging:\n    protocol:\n    options:\n        host:\n        root:\n        username:\n        …\n```\n\n\n### FTP Options\n\n#### Options\n\n| Key          | Description |\n| ------------ | ----------- |\n| host         | DNS host name to upload to\n| root         | The root directory of the remote site. Can be an absolute path, or if missing a trailing `/` it will be assumed to be a subdirectory of the remote user's home directory\n| username     | User name to login to the remote host with\n| password     | (optional) Password to login to the remote host with\n| port         | (optional) Port number to connect to if the target is not listening on the default\n| ssl          | (optional) Connect to the FTP target host over a secure SSL-FTP connection\n| timeout      | (optional) Time in seconds to wait for a connection attempt\n| transferMode | (optional) The transfer mode. Must be either ASCII or BINARY\n| utf8         | (optional) Set the connection to UTF-8 mode\n| passive      | (optional) Force FTP to use \"passive\" mode\n| ignorePassiveAddress | (optional) Ignore the IP address returned when setting up a passive connection. Useful if a server is behind a NAT device. Requires PHP \u003e= 5.6.18\n\n\n#### Example\n\n```\nstaging:\n    protocol: ftp\n    options:\n        host: example.com\n        root: my-site\n        username: deploy\n        password: 'your password goes here'\n```\n\n**NOTE:** In the above example, the root directory is a subdirectory of the\nremote user's home directory called `my-site/`, e.g. `/home/deploy/my-site/`.\n\n\n### SFTP Options\n\n#### Options\n\n| Key             | Description |\n| --------------- | ----------- |\n| host            | DNS host name to upload to\n| root            | The root directory of the remote site. Can be an absolute path, or if missing a trailing `/` it will be assumed to be a subdirectory of the remote user's home directory\n| username        | User name to login to the remote host with\n| password        | (optional) Password to login to the remote host with\n| privateKey      | (optional) Full path to private key file to for key exchange if **not** using password authentication\n| useAgent        | (optional) Set to `true` if using a private key, and you don't want to use the system SSH agent\n| port            | (optional) Port number to connect to if the target is not listening on the default\n| timeout         | (optional) Time in seconds to wait for a connection attempt\n| hostFingerprint | (optional) The public key fingerprint of the deployment target\n\n**NOTE:** Either a `password` or `privateKey` **must** be set.\n\n\n#### Example: Password Login\n\n```\nproduction:\n    protocol: sftp\n    options:\n        host: example.com\n        username: deploy\n        password: 'your password goes here'\n        root: /var/www/sites/example.com\n```\n\n\n#### Example: Key-Based Login\n\n```\nproduction:\n    protocol: sftp\n    options:\n        host: example.com\n        username: deploy\n        privateKey: /home/your_home_dir/.ssh/id_rsa\n        root: /var/www/sites/example.com\n```\n\n\n### Setting Permissions\n\nYou can control the permissions of **newly created** files and directories by\nadding a `permissions` key under `options`.\n\nBy default, Simple Deploy will set files to `0664` and directories to `0775`,\nbut if you need less restricted permissions (not recommended) you can set\nthem like:\n\n```\n    options:\n        permissions:\n            file: 0666\n            dir: 0777\n```\n\nOf course more secure values are also possible and recommended.\n\n\n### Editing\n\nA very simple editor is also available by adding the `--edit` option to the\ncommand.\n\n```\nphp app/nut setup:deploy --edit \u003ctarget\u003e\n```\n\n\n#### Example: Editing the configuration for the \"production\" target\n\n```\nphp app/nut setup:deploy --edit production\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbolt%2Fsimple-deploy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbolt%2Fsimple-deploy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbolt%2Fsimple-deploy/lists"}