🚀 DevOps Scripts for Repository Management and CI/CD Automation
DevBin64 is a collection of DevOps scripts designed to simplify the maintenance of code repositories and automate CI/CD tasks. It provides a standardized approach to managing repositories and implementing routine DevOps workflows.
- Bash V4: used by the scripts.
- Curl, Tar, and GZip: used to download and unpack packages.
DevBin64 can be installed using the Installer64 tool:
curl -sL https://raw.githubusercontent.com/automation64/installer64/main/src/bootstrap | sh
sudo /opt/inst64/install-devbin64- Initialize your local git repository as usual. For example
mkdir my-repo
cd my-repo
git init- (Optional) Select CICD modules for your repository.
# List available modules
ls /opt/devbin64/lib
# Set selected modules
export DEV_BOOTSTRAP_MODULES='MODULE1 MODULE2 MODULEX'- Deploy DevBin64 to your repository
devbin64./bin/dev-<TASK>-<MODULE>Make available in the current shell the DevBin64 environment variables:
source ./bin/dev-setThe repository is organized as follows:
bin/: DevBin64 scripts.build/: Build artifacts and temporary files.docs/: Documentation and skeleton files for the project.etc/: Project-specific configuration files.lib/: Shared libraries and modules.logs/: Logs generated during development and CI/CD processes.src/: Source code for the project.test/: Test cases and related files.tmp/: Temporary files.var/: Variable data files.vault/: Local vault for secrets (excluded from version control).
The repository includes the following configuration files:
.dev.env: Development environment variables..gitignore: Git ignore rules for the project..local.env: (Optional) Local environment variables.vault/.secrets.env: (Optional) Secrets environment variables.doc.*: Configuration file templates.
Additional module boilerplates are available in the DevBin64 for adding to your repository:
/opt/devbin64/lib/<MODULE>/.github: GitHub Actions/opt/devbin64/lib/<MODULE>/test: Code testing/opt/devbin64/lib/<MODULE>/.devcontainer: DevContainers/opt/devbin64/lib/<MODULE>/<CONFIGURATION>: module specific configuration file
Contributions are welcome! Help us improve by submitting issues, feature requests, or pull requests.
Installer64 is licensed under the Apache-2.0 License.
🌟 If you find this project useful, consider giving it a star! ⭐