homelab/roles/jenkins/tasks/main.yml

47 lines
1.1 KiB
YAML

- name: Install Ansible source
template:
src: ansible.list
dest: /etc/apt/sources.list.d/ansible.list
- name: Add Ansible source key
apt_key:
keyserver: keyserver.ubuntu.com
id: 93C4A3FD7BB9C367
- name: Install Ansible
apt:
name: ansible
state: present
- name: Install Java
apt:
name: default-jre
state: present
- name: Create Jenkin's directory
file:
path: "{{ jenkins_root }}"
state: directory
owner: "1000"
group: "1000"
- name: Start Jenkins Container
docker_container:
name: "{{ jenkins_name }}"
image: jenkins/jenkins:{{ jenkins_version }}
state: started
restart_policy: always
ports:
- 50000:50000
volumes: "{{ jenkins_root }}:/var/jenkins_home"
networks_cli_compatible: true
networks:
- name: traefik
labels:
traefik.http.routers.jenkins.rule: "Host(`{{ jenkins_domain }}`)"
traefik.http.routers.jenkins.entrypoints: websecure
traefik.http.routers.jenkins.tls.certresolver: letsencrypt
traefik.http.routers.jenkins.middlewares: "securehttps@file"
traefik.docker.network: traefik
traefik.enable: "true"