From d6454704216bfa4b4f6e8a250f057f2b0d543fa1 Mon Sep 17 00:00:00 2001 From: Luke Hoersten Date: Sat, 22 Jul 2023 15:50:07 -0500 Subject: Finished up dendrite build server role. --- dendrite/build/defaults/main.yaml | 2 +- dendrite/build/tasks/main.yaml | 34 ++++++++++++++++++++++++++++++---- dendrite/server/defaults/main.yaml | 2 +- dendrite/server/tasks/main.yaml | 16 +++++++++++++++- 4 files changed, 47 insertions(+), 7 deletions(-) (limited to 'dendrite') diff --git a/dendrite/build/defaults/main.yaml b/dendrite/build/defaults/main.yaml index 2f13a9d..a2675c5 100644 --- a/dendrite/build/defaults/main.yaml +++ b/dendrite/build/defaults/main.yaml @@ -1,7 +1,7 @@ --- -dendrite_user: "dendrite" dendrite_version: "0.13.1" # https://github.com/matrix-org/dendrite/releases dendrite_tar: "https://github.com/matrix-org/dendrite/archive/refs/tags/v{{dendrite_version}}.tar.gz" dendrite_build_dir: "/tmp/dendrite-{{dendrite_version}}" +dendrite_srv_dir: "/var/www/build/" diff --git a/dendrite/build/tasks/main.yaml b/dendrite/build/tasks/main.yaml index 04b9282..f4d15dc 100644 --- a/dendrite/build/tasks/main.yaml +++ b/dendrite/build/tasks/main.yaml @@ -1,8 +1,8 @@ --- -- name: snap install golang +- name: install golang become: yes - snap: name="go" classic="yes" + apt: name="golang-go" - name: unarchive dendrite unarchive: @@ -11,13 +11,39 @@ dest: "/tmp/" creates: "{{dendrite_build_dir}}" +- name: create build dir + file: + path: "{{dendrite_build_dir}}/bin" + mode: "0755" + state: "directory" + - name: check if dendrite build exists stat: - path: "{{dendrite_build_dir}}/bin" + path: "{{dendrite_build_dir}}/bin/dendrite" register: build_file - name: build dendrite - command: "{{dendrite_build_dir}}/build.sh" + command: "go build -o bin/ ./cmd/..." args: chdir: "{{dendrite_build_dir}}" when: not build_file.stat.exists + +- name: create build server dir + become: yes + file: + path: "{{dendrite_srv_dir}}" + mode: "0755" + state: "directory" + when: not build_file.stat.exists + +- name: create a gz archive of dendrite bins + become: yes + archive: + path: "{{dendrite_build_dir}}/bin/*" + exclude_path: + - "{{dendrite_build_dir}}/bin/dendrite-demo-pinecone" + - "{{dendrite_build_dir}}/bin/dendrite-demo-yggdrasil" + - "{{dendrite_build_dir}}/bin/furl" + dest: "{{dendrite_srv_dir}}/dendrite.tar.gz" + format: "gz" + when: not build_file.stat.exists diff --git a/dendrite/server/defaults/main.yaml b/dendrite/server/defaults/main.yaml index 5c4a864..c130eb8 100644 --- a/dendrite/server/defaults/main.yaml +++ b/dendrite/server/defaults/main.yaml @@ -1,6 +1,6 @@ --- -dendrite_bin_dir: "/tmp/dendrite-{{dendrite_version}}" +dendrite_user: "dendrite" dendrite_old_key: false dendrite_registration_disabled: true dendrite_registration_secret: "" diff --git a/dendrite/server/tasks/main.yaml b/dendrite/server/tasks/main.yaml index b25cbc8..258404f 100644 --- a/dendrite/server/tasks/main.yaml +++ b/dendrite/server/tasks/main.yaml @@ -4,10 +4,24 @@ become: yes user: name="{{dendrite_user}}" shell="/bin/false" system="yes" +- name: create unzip dir + become: yes + file: + path: "/tmp/dendrite/" + state: "directory" + mode: "0755" + +- name: unarchive dendrite bins + become: yes + unarchive: + remote_src: yes + src: "{{dendrite_tar}}" + dest: "/tmp/dendrite/" + - name: install dendrite binary become: yes copy: - src: "{{dendrite_bin_dir}}/{{item.src}}" + src: "/tmp/dendrite/{{item.src}}" dest: "/usr/local/bin/{{item.dest}}" remote_src: yes owner: "root" -- cgit v1.2.3