Skip to content

Commit 596be0f

Browse files
authored
Merge pull request #371 from itk-dev/hotfix/os2form-deploy
OS2 forms auto-deployment (woodpecker)
2 parents 60e3fac + 5f2f839 commit 596be0f

File tree

4 files changed

+113
-0
lines changed

4 files changed

+113
-0
lines changed
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
on:
2+
push:
3+
tags:
4+
- '*.*.*'
5+
6+
name: Create Github Release
7+
8+
permissions:
9+
contents: write
10+
11+
env:
12+
COMPOSE_USER: runner
13+
14+
jobs:
15+
create-release:
16+
runs-on: ubuntu-latest
17+
env:
18+
COMPOSER_ALLOW_SUPERUSER: 1
19+
APP_ENV: prod
20+
steps:
21+
- name: Checkout
22+
uses: actions/checkout@v4
23+
24+
- name: Composer install
25+
run: |
26+
docker network create frontend
27+
docker compose run --rm --user=root phpfpm composer install --no-dev -o --classmap-authoritative
28+
docker compose run --rm --user=root phpfpm composer clear-cache
29+
30+
- name: Build theme
31+
run: |
32+
- docker compose run --rm node yarn install
33+
- docker compose run --rm node yarn build
34+
- docker compose run --rm node rm -rf node_modules
35+
# Ensure everything is owned by runner
36+
- sudo chown -R ${{ COMPOSE_USER }}:${{ COMPOSE_USER }} web
37+
38+
- name: Make assets dir
39+
run: |
40+
mkdir -p ../assets
41+
42+
- name: Create archive
43+
run: |
44+
sudo chown -R runner:runner ./
45+
tar --exclude='.git' -zcf ../assets/${{ github.event.repository.name }}-${{ github.ref_name }}.tar.gz ./
46+
47+
- name: Create checksum
48+
run: |
49+
cd ../assets
50+
sha256sum ${{ github.event.repository.name }}-${{ github.ref_name }}.tar.gz > ../assets/checksum.txt
51+
52+
- name: Create a release in GitHub and uploads assets
53+
run: gh release create ${{ github.ref_name }} --verify-tag --generate-notes ../assets/*.*
54+
env:
55+
GITHUB_TOKEN: ${{ github.TOKEN }}
56+
shell: bash

.woodpecker/os2forms_prod.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
when:
2+
- event: release
3+
4+
skip_clone: true
5+
6+
labels:
7+
zone: CLOUD
8+
9+
steps:
10+
- name: Ansible playbook
11+
image: itkdev/ansible-plugin:1
12+
pull: true
13+
settings:
14+
id:
15+
from_secret: id
16+
secret:
17+
from_secret: secret
18+
host:
19+
from_secret: prod_os2forms_host
20+
path:
21+
from_secret: prod_os2forms_path
22+
user:
23+
from_secret: user
24+
playbook: 'release'
25+
pre_up:
26+
# Fixes issue with 'Drupal\mysql\Driver\Database\mysql\Connection' not found
27+
- itkdev-docker-compose-server run --rm phpfpm composer2 dump-autoload
28+
- itkdev-docker-compose-server run --rm phpfpm vendor/bin/drush --yes cache:rebuild
29+
- itkdev-docker-compose-server run --rm phpfpm vendor/bin/drush --yes deploy
30+
- itkdev-docker-compose-server exec phpfpm vendor/bin/drush --yes locale:update
31+
- itkdev-docker-compose-server exec phpfpm vendor/bin/drush --yes locale:import --type=customized --override=none da /app/web/profiles/custom/os2loop/translations/translations.da.po
32+
- itkdev-docker-compose-server run --rm phpfpm vendor/bin/drush --yes cache:rebuild
33+
cron:
34+
cron:
35+
minute: '47'
36+
hour: '*'
37+
day: '*'
38+
month: '*'
39+
weekday: '*'
40+
job: 'itkdev-docker-compose-server exec phpfpm vendor/bin/drush core:cron'

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ Versioning](https://semver.org/spec/v2.0.0.html).
88

99
## [Unreleased]
1010

11+
- [PR-371](https://github.com/itk-dev/os2loop/pull/371)
12+
Added GitHub action to build release
13+
Added os2forms auto deployment
14+
1115
- [PR-370](https://github.com/itk-dev/os2loop/pull/370)
1216
Added woodpecker to test site deployment
1317

config/sync/config_ignore.settings.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,16 @@ ignored_config_entities:
1717
- samlauth.authentication
1818
- samlauth_user_roles.mapping
1919
- system.site
20+
- user.role.anonymous
21+
- user.role.os2loop_user_external_sources_editor
22+
- user.role.os2loop_user_manual
23+
- user.role.os2loop_user_post_author
24+
- user.role.os2loop_user_document_collection_editor
25+
- user.role.os2loop_user_document_author
26+
- user.role.os2loop_user_administrator'
27+
- user.role.authenticated
28+
- user.role.os2loop_user_user_administrator
29+
- views.view.files
30+
- system.action.user_add_role_action.os2loop_user_user_administrator
31+
- system.action.user_remove_role_action.os2loop_user_user_administrator
32+
- user.role.os2loop_user_user_administrator

0 commit comments

Comments
 (0)