https://github.com/devbeno/starter
https://github.com/devbeno/starter
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/devbeno/starter
- Owner: devbeno
- License: mit
- Created: 2022-06-08T23:48:15.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-06-09T00:51:35.000Z (about 3 years ago)
- Last Synced: 2025-01-12T21:32:33.764Z (6 months ago)
- Language: Rust
- Size: 22.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# starter
[](LICENSE)
[](#rust-version-requirements)A Rust tool to deploy websites with ease, using git-flow and Gitlab CI/CD.
Philosophy
---Warning: personal opinion here.
While git-flow is not trendy _at all_, it still has advantages over GitHub flow for website deployment:
- clear distinction between production and development environments
- a strong usage of tags, providing an easy rollback mechanism
- a good convention for branch namesThis tool is only intended to help creating and deploy new releases. Handling gitflow's features, hotfixes and bugfixes are (and will) not be covered.
Installation
---To install starter, run:
```sh
cargo install starter
```Configuration
----Setup some environment variables:
```sh
export STARTER_GITLAB_HOST=gitlab.com # default to gitlab.com, but it can be a private instance
export STARTER_GITLAB_TOKEN=glpat-012345678012345678 # GitLab access token with "api" rights
```Usage
---```
USAGE:
starter [FLAGS] [OPTIONS]FLAGS:
-d, --deploy Launch a deploy job after the releaseOPTIONS:
-e, --environment Define the deploy environment (default: "Production", available: "Production",
"Staging")
-s, --semver_type Define how to increment the version number (default: "Patch", available: "Patch",
"Minor", "Major")
```Examples:
---Create a staging release and deploy it:
```sh
starter --environment=Staging --deploy
```Create a production release, with logger level set at "debug", incrementing to the next minor version:
```sh
starter --semver_type=Minor --debug
starter --environment=Production --semver_type=Minor --debug
# Those two lines are equivalent
```