diff --git a/Dockerfile b/Dockerfile index db3e630..4a681d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,18 +30,26 @@ RUN curl -L "https://github.com/gruntwork-io/terragrunt/releases/download/${TERR chmod +x "${BINARY_NAME}" && \ mv "${BINARY_NAME}" /usr/local/bin/terragrunt - # Terraform installation +# Terraform installation RUN curl -L "https://releases.hashicorp.com/terraform/${TF_VERSION}/terraform_${TF_VERSION}_${OS}_${ARCH}.zip" -o terraform.zip && \ unzip terraform.zip && \ mv terraform /usr/local/bin/ && \ rm terraform.zip && \ chmod +x /usr/local/bin/terraform - # Hashicorp Vault installation +# Hashicorp Vault installation RUN wget -O - https://apt.releases.hashicorp.com/gpg | gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(grep -oP '(?<=UBUNTU_CODENAME=).*' /etc/os-release || lsb_release -cs) main" | tee /etc/apt/sources.list.d/hashicorp.list && \ apt update && apt -y install vault - # Injecting python modules +# Injecting python modules RUN pipx install --include-deps ansible && \ pipx inject ansible requests pytz + +# Gitlab CLI +RUN curl -L "https://gitlab.com/api/v4/projects/gitlab-org%2Fcli/packages/generic/glab/1.117.0/glab_1.117.0_${OS}_${ARCH}.deb" -o glab.deb && \ + dpkg -i glab.deb && \ + rm -f glab.deb + +# Github CLI +RUN curl -sS https://webi.sh/gh | sh \ No newline at end of file diff --git a/README.md b/README.md index d35d8ed..554a537 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ This Docker image is based on Ubuntu 24.04 and includes popular IAC tools common - **Terragrunt** - Terraform wrapper for managing multiple environments - **Ansible** - Configuration management and automation tool - **Vault** - Hashicorp vault binary +- **GitLab CLI (glab)** - Command line interface for GitLab +- **GitHub CLI (gh)** - Command line interface for GitHub ## Included Tools @@ -19,6 +21,8 @@ This Docker image is based on Ubuntu 24.04 and includes popular IAC tools common | Terragrunt | v0.77.22 | Thin wrapper for Terraform that provides extra tools for working with multiple Terraform modules | | Ansible | Latest | Automation platform for configuration management, application deployment, and task automation | | vault | Latest | Hashicorp vault client for managing vault resources | +| glab | 1.117.0 | GitLab CLI for managing merge requests, pipelines, issues and repositories from the terminal | +| gh | Latest | GitHub CLI for managing pull requests, issues, releases and repositories from the terminal | ## Additional Packages @@ -56,6 +60,8 @@ docker run -it --rm -v $(pwd):/workspace -w /workspace iac-tools:latest /bin/bas docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest terraform --version docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest terragrunt --version docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest ansible --version +docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest glab --version +docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest gh --version ``` ### Docker Compose