Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fvilarinho/cicdzerotohero
This project has the intention to demonstrate the basics of a CI/CD pipeline by provisioning a compute instance with Git server (Gitea) and Jenkins in Akamai Connected Cloud with pre-installed tools.
https://github.com/fvilarinho/cicdzerotohero
akamai devops gitea jenkins linode terraform
Last synced: about 2 months ago
JSON representation
This project has the intention to demonstrate the basics of a CI/CD pipeline by provisioning a compute instance with Git server (Gitea) and Jenkins in Akamai Connected Cloud with pre-installed tools.
- Host: GitHub
- URL: https://github.com/fvilarinho/cicdzerotohero
- Owner: fvilarinho
- License: apache-2.0
- Created: 2022-10-13T14:57:12.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-27T04:11:10.000Z (4 months ago)
- Last Synced: 2024-10-27T05:19:52.796Z (4 months ago)
- Topics: akamai, devops, gitea, jenkins, linode, terraform
- Language: HCL
- Homepage:
- Size: 234 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## CI/CD Zero to Hero
### Introduction
This project has the intention to demonstrate the basics of a CI/CD pipeline by provisioning a compute instance with
Git server (Gitea with Actions Runner) in Akamai Cloud Computing with pre-installed tools:- [`Terraform 1.5.x`](https://terraform.io)
- [`Docker 24.x`](https://www.docker.com)
- [`NodeJS 20.x`](https://nodejs.org)
- [`NPM 10.x`](https://www.npmjs.com)
- [`Gitea 1.22.x`](https://gitea.com)
- [`Gitea Action Runner 0.2.x`](https://docs.gitea.com/usage/actions/act-runner)It automates (using **Terraform**) the provisioning of the following resources in Akamai Cloud Computing (former Linode)
environment:
- **Domains**: Authoritative DNS server. (Please check the file `iac/linode-dns.tf` for more details).
- **Firewall**: Cloud Firewall. (Please check the file `iac/linode-firewall.tf` for more details).
- **Linodes**: Compute instances to run Gitea and Action Runner. (Please check the file `iac/linode-compute.tf` for more
- **Credentials**: SSH Private/Public Keys used to access the compute instances (Please check the file `iac/linode-credentials.tf`
for more details).
- **TLS Certificate**: LetsEncrypt signed certificate to enable HTTPs traffic in the compute instances. (Please check
the file `iac/certificate.tf` for more details).### Requirements for you local machine
- [`Terraform 1.5.x`](https://terraform.io)
- [`Docker 24.x`](https://www.docker.com)
- `Any Linux Distribution` or
- `Windows 10 or later` or
- `MacOS Catalina or later`All Terraform files use `variables` that are stored in the `iac/variables.tf`.
Please check this [link](https://developer.hashicorp.com/terraform/tutorials/configuration-language/variables) to know how to customize the variables.
### To deploy it in Akamai Cloud Computing
Just execute the command `deploy.sh` in your project directory. To undeploy, just execute the command `undeploy.sh` in
your project directory.### To customize the Gitea Action Runner
You can customize the Action Runner adding new software and/or patching. To do it, just edit the following files:
- `iac/.env`: It contains the container registry information and the build version.
- `iac/Dockerfile`: It contains the definition of the container image (required software, etc.).After that, execute the following commands:
- `build.sh`: To build the container images.
- `publish.sh`: To publish the container images in the container registry.### Documentation
Follow the documentation below to know more about Akamai:
- [**Akamai Techdocs**](https://techdocs.akamai.com)### Important notes
- **DON'T EXPOSE OR COMMIT ANY SENSITIVE DATA, SUCH AS CREDENTIALS, IN THE PROJECT.**### Contact
**LinkedIn:**
- https://www.linkedin.com/in/fvilarinho**e-Mail:**
- [email protected]
- [email protected]
- [email protected]
- [email protected]and that's all! Have fun!