Skip to content
Snippets Groups Projects
Commit 4496e5db authored by elhasnaoui's avatar elhasnaoui
Browse files

Feat: Add CI pipeline to deploy the synapse application

parent a308f717
Branches
No related tags found
No related merge requests found
Pipeline #42853 failed
...@@ -2,35 +2,54 @@ stages: ...@@ -2,35 +2,54 @@ stages:
- build - build
- Config - Config
- deploy - deploy
# TInstall the base Configuration.
Configuration_base: # Build the ansible runner (You can Set a local gitlab runner)
build:
stage: build stage: build
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini main.yml --ask-vault-pass - docker build -t ansible-container .
# Install the base Configuration.
Configuration_base:
stage: Config
image: docker:latest
script:
- docker build -t ansible-container .
- docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/base.yml --ask-vault-pass
# Upgrade packages. # Upgrade packages.
Upgrade: Upgrade:
stage: build stage: Config
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini upgrade.yml --ask-vault-pass - docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/upgrade.yml --ask-vault-pass
# Configure docker # Configure docker
Configuration_docker: Configuration_docker:
stage: Config stage: Config
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini Config.yml --ask-vault-pass - docker build -t ansible-container .
- docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/docker.yml --ask-vault-pass
# Configure nginx # Configure nginx
Configuration_nginx: Configuration_nginx:
stage: Config stage: Config
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini nginx.yml --ask-vault-pass - docker build -t ansible-container .
- docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/nginx.yml --ask-vault-pass
# Configure postgreSQL # Configure postgreSQL
Configuration_postgreSQL: Configuration_postgreSQL:
stage: Config stage: Config
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini postgresql.yml --ask-vault-pass - docker build -t ansible-container .
- docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/postgresql.yml --ask-vault-pass
# Deploy the synapse app. # Deploy the synapse app.
Configuration_Synapse: Configuration_Synapse:
stage: deploy stage: deploy
image: docker:latest
script: script:
- ansible-playbook -i inventory.ini synapse.yml --ask-vault-pass - docker build -t ansible-container .
\ No newline at end of file - docker run -v $(pwd):/ansible ansible-container ansible-playbook -i inventory.ini /ansible/synapse.yml --ask-vault-pass
\ No newline at end of file
# Dockerfile
# Use a base image with Python and pip installed
FROM python:3
# Install Ansible
RUN pip install ansible
# Copy your playbook and inventory file into the container
COPY playbooks/* /ansible/*
COPY inventory.ini /ansible/inventory.ini
# Set the working directory
WORKDIR /ansible
File moved
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment