aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/roles/workspace
diff options
context:
space:
mode:
Diffstat (limited to 'roles/workspace')
-rw-r--r--roles/workspace/README.md8
-rw-r--r--roles/workspace/defaults/main.yml4
-rw-r--r--roles/workspace/tasks/main.yml35
-rw-r--r--roles/workspace/tasks/project.yml70
4 files changed, 0 insertions, 117 deletions
diff --git a/roles/workspace/README.md b/roles/workspace/README.md
deleted file mode 100644
index 44af085..0000000
--- a/roles/workspace/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-This role is the most specialized and opinionated of all. It can be used to
-clone a bunch of repositories to /srv/workspace; it then tries to run either
-`make` or `docker-compose up -d` in each of these repositories, which are
-called "projects".
-
-This is how my web "projects" are set up; typically, a project is a repository
-with a Makefile which calls docker-compose in a bunch of sub-directories. This
-feels like a lame hack, but has worked pretty well so far.
diff --git a/roles/workspace/defaults/main.yml b/roles/workspace/defaults/main.yml
deleted file mode 100644
index b517f2c..0000000
--- a/roles/workspace/defaults/main.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-git_name: Egor Tensin
-git_email: Egor.Tensin@gmail.com
-
-workspace_dir: /srv/workspace
diff --git a/roles/workspace/tasks/main.yml b/roles/workspace/tasks/main.yml
deleted file mode 100644
index 179bdef..0000000
--- a/roles/workspace/tasks/main.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-- name: Create workspace directory
- become: true
- ansible.builtin.file:
- path: '{{ workspace_dir }}'
- state: directory
- owner: '{{ ansible_user }}'
- group: '{{ ansible_user }}'
- mode: '750'
-
-- name: Install dependencies
- become: true
- ansible.builtin.apt:
- name:
- - git
- # I use Makefiles a lot, makes sense to install this:
- - make
- - vim
-
-- name: Configure git
- block:
- - name: Set user.name
- community.general.git_config:
- scope: global
- name: user.name
- value: '{{ git_name }}'
-
- - name: Set user.email
- community.general.git_config:
- scope: global
- name: user.email
- value: '{{ git_email }}'
-
-- name: Update projects
- ansible.builtin.include_tasks: project.yml
- loop: '{{ workspace_projects }}'
diff --git a/roles/workspace/tasks/project.yml b/roles/workspace/tasks/project.yml
deleted file mode 100644
index ae139f5..0000000
--- a/roles/workspace/tasks/project.yml
+++ /dev/null
@@ -1,70 +0,0 @@
-- name: Set project URL
- ansible.builtin.set_fact:
- project_url: '{{ item.url | default(item) }}'
-
-- name: Set project name
- ansible.builtin.set_fact:
- project_name: "{{ item.name | default(project_url | urlsplit('path') | basename | regex_replace('\\.git$', '')) }}"
-
-- name: Set project directory
- ansible.builtin.set_fact:
- project_dir: '{{ workspace_dir }}/{{ project_name }}'
-
-- name: 'Update repository: {{ project_name }}'
- ansible.builtin.git:
- accept_hostkey: true
- dest: '{{ project_dir }}'
- repo: '{{ project_url }}'
-
-- name: Check for Makefile
- ansible.builtin.file:
- path: '{{ project_dir }}/Makefile'
- state: file
- register: makefile_check
- ignore_errors: true
-
-- name: This project uses make
- become: true
- when: makefile_check is succeeded
- block:
- - name: Run make
- ansible.builtin.command: make
- args:
- chdir: '{{ project_dir }}'
- register: make_output
- when: makefile_check is succeeded
-
- - name: Show make output
- ansible.builtin.debug:
- var: make_output
-
-- name: Check for docker-compose.yml
- ansible.builtin.file:
- path: '{{ project_dir }}/docker-compose.yml'
- state: file
- register: docker_compose_check
- ignore_errors: true
-
-- name: This project uses docker-compose
- become: true
- when: makefile_check is not succeeded and docker_compose_check is succeeded
- block:
- - name: docker-compose pull
- ansible.builtin.command: docker-compose pull
- args:
- chdir: '{{ project_dir }}'
-
- - name: docker-compose build
- ansible.builtin.command: docker-compose build --force-rm --pull -q
- args:
- chdir: '{{ project_dir }}'
-
- - name: docker-compose up
- ansible.builtin.command: docker-compose up --remove-orphans -d
- args:
- chdir: '{{ project_dir }}'
- register: docker_compose_up
-
- - name: Show docker-compose up output
- ansible.builtin.debug:
- var: docker_compose_up