diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..1c689086 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,33 @@ +name: Go CI Pipeline + +on: + push: + pull_request: + +jobs: + build-and-test: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./outyet + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: '1.21' + + - name: Build + run: go build -o outyet-app + + - name: Test + run: go test ./... + + - name: Upload binary + uses: actions/upload-artifact@v4 + with: + name: outyet-app + path: outyet/outyet-app \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 00000000..7bc07ec2 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Environment-dependent path to Maven home directory +/mavenHomeManager.xml +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 00000000..4179b45a --- /dev/null +++ b/docs/index.html @@ -0,0 +1,29 @@ + + + + + The Multi-stage CI/CD Pipeline + + +

Multi-stage CI/CD Pipeline

+ +

+ The main purpose of a CI/CD pipeline is to automate the process of building, testing, and preparing code for deployment whenever new changes are introduced. + This helps identify errors early, ensures code quality, and makes development more efficient and reliable. +

+ +

In this project, the pipeline follows these stages:

+ + + +

+ This type of automation reduces manual effort, minimizes the risk of human error, and speeds up the development workflow by giving quick feedback on every change. +

+ + \ No newline at end of file