1 Commits

Author SHA1 Message Date
Max
2150239df0 feat: runner works
All checks were successful
🔧 Pipeline / 🪨 Terraform (pull_request) Successful in 8s
2025-01-08 18:58:28 -05:00
7 changed files with 47 additions and 42 deletions

Submodule Codebase deleted from 1a9bbe797c

View File

@@ -22,11 +22,13 @@ tasks:
gitea/build: ansible-playbook playbooks/gitea/build.yml
gitea/deploy: ansible-playbook playbooks/gitea/deployment.yml
gitea/enter: ./ssm/gitea.sh
gitea/token: ansible-playbook playbooks/gitea/runner_token.yml
gitea:
- task: gitea/build
- task: gitea/deploy
runner: ansible-playbook playbooks/runner/deployment.yml
runner/enter: ./ssm/runner.sh
runner/deploy: ansible-playbook playbooks/runner/deployment.yml
repository/copy: ansible-playbook playbooks/repository.yml

View File

@@ -0,0 +1,22 @@
- name: Get Gitea Runner registration token.
hosts: localhost
become: true
vars_files:
- ../../secrets/gitea.json
- ../../secrets/terraform.json
vars:
ansible_connection: aws_ssm
ansible_python_interpreter: /usr/bin/python3
ansible_aws_ssm_plugin: "{{ ssm_plugin }}"
ansible_aws_ssm_bucket_name: "{{ image_bucket }}"
ansible_aws_ssm_instance_id: "{{ private_instance_id.value }}"
ansible_aws_ssm_region: "{{ aws_region }}"
ansible_aws_ssm_access_key_id: "{{ aws_access_key }}"
ansible_aws_ssm_secret_access_key: "{{ aws_secret_key }}"
tasks:
- name: Get token.
community.docker.docker_container_exec:
container: server
command: gitea actions generate-runner-token
register: token

View File

@@ -14,22 +14,6 @@
ansible_aws_ssm_access_key_id: "{{ aws_access_key }}"
ansible_aws_ssm_secret_access_key: "{{ aws_secret_key }}"
tasks:
# - name: Fetch image.
# amazon.aws.s3_object:
# mode: get
# bucket: "{{ image_bucket }}"
# object: "{{ image_key }}"
# dest: ~/image.tar.xz
# region: "{{ aws_region }}"
# access_key: "{{ aws_access_key }}"
# secret_key: "{{ aws_secret_key }}"
# - name: Load image.
# community.docker.docker_image_load:
# path: ~/image.tar.xz
# register: image
- name: Run image.
community.docker.docker_container:
name: server
@@ -41,6 +25,3 @@
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
env:
INITIAL_ADMIN_EMAIL: "proxy@maximhutz.com"
INITIAL_ADMIN_PASSWORD: "expensive-giraffe"

View File

@@ -1,24 +1,5 @@
- name: Get registration token.
hosts: localhost
vars_files:
- ../../secrets/proxy.json
- ../../secrets/terraform.json
vars:
ansible_connection: aws_ssm
ansible_python_interpreter: /usr/bin/python3
ansible_aws_ssm_plugin: "{{ ssm_plugin }}"
ansible_aws_ssm_bucket_name: "{{ image_bucket }}"
ansible_aws_ssm_instance_id: "{{ private_instance_id.value }}"
ansible_aws_ssm_region: "{{ aws_region }}"
ansible_aws_ssm_access_key_id: "{{ aws_access_key }}"
ansible_aws_ssm_secret_access_key: "{{ aws_secret_key }}"
tasks:
- name: Generate registration token.
community.docker.docker_container_exec:
container: server
command: gitea actions grt
register: token
ansible.builtin.import_playbook: ../gitea/runner_token.yml
- name: Deploy artifact to instance.
hosts: localhost

19
ssm/runner.sh Executable file
View File

@@ -0,0 +1,19 @@
#!/bin/sh
set -e
# ---------------------------------------------------------------------------- #
AWS_REGION="us-east-1"
AWS_ACCESS_KEY_ID="$(jq -r '.aws_access_key' < secrets/runner.json)"
AWS_SECRET_ACCESS_KEY="$(jq -r '.aws_secret_key' < secrets/runner.json)"
export AWS_REGION
export AWS_ACCESS_KEY_ID
export AWS_SECRET_ACCESS_KEY
# ---------------------------------------------------------------------------- #
INSTANCE_ID="$(jq -r '.runner_instance_id.value' < secrets/terraform.json)"
aws ssm start-session --target "$INSTANCE_ID"

View File

@@ -7,4 +7,5 @@ systemctl start docker
usermod -a -G docker ssm-user
ln -sf /usr/bin/python3.8 /usr/bin/python3
pip install botocore boto3 requests
ln -sf /usr/bin/pip3.8 /usr/bin/pip3
pip3 install botocore boto3 requests