Skip to content

Commit

Permalink
🐳Publish docker image for federation server
Browse files Browse the repository at this point in the history
  • Loading branch information
shepilov committed Jan 31, 2024
1 parent 7ac3004 commit 88d5e81
Show file tree
Hide file tree
Showing 5 changed files with 55 additions and 58 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: pr
on:
pull_request_target:
branches:
- tom-builds
- main
merge_group:
workflow_dispatch:

Expand Down
61 changes: 9 additions & 52 deletions .github/workflows/publish-matrix-invite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@
name: publish-matrix-invite

on:
workflow_run:
workflows: [build-and-test]
types:
- completed
workflow_call:

jobs:
tests:
Expand All @@ -25,54 +22,14 @@ jobs:
files: |
packages/federation-server/**/*
.github/workflows/**
- name: Build and publish matrix-invite docker image
if: steps.changed-files.outputs.any_changed == 'true'
uses: philips-software/[email protected]
- name: Publish to dockerhub
uses: elgohr/Publish-Docker-Github-Action@v5
with:
base-dir: "${{ github.workspace }}/packages/matrix-invite/"
dockerfile: "${{ github.workspace }}/packages/matrix-invite/Dockerfile"
image-name: "twake-matrix-invite"
name: linagora/tom-federation-server
username: ${{ secrets.DOCKERHUB_USER }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
workdir: "${{ github.workspace }}/packages/matrix-invite/"
context: .
buildoptions: "-t linagora/twake-matrix-invite" -f Dockerfile
tags: "latest"
env:
REGISTRY_USERNAME: ${{ secrets.DOCKERHUB_USER }}
REGISTRY_TOKEN: "${{ secrets.DOCKERHUB_PASSWORD }}"
DOCKER_ORGANIZATION: twaketech

update-doc:
runs-on: ubuntu-latest
needs: test
if: github.event_name == 'pull_request'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Set up Node LTS
uses: actions/setup-node@v3
with:
node-version: lts/*
- name: Install dependencies
run: npm ci
- name: Generate Swagger documentation
run: npm run doc
- name: Check if documentation files has changed
id: verify-changed-files
uses: tj-actions/verify-changed-files@v17
with:
files: docs/openapi.json
- name: Update documentation files
if: steps.verify-changed-files.outputs.files_changed == 'true'
env:
SPEC_TO_DISPLAY: "openapi.json"
DISABLE_TRY_IT_OUT_JS_METHOD: "const DisableTryItOutPlugin = function() {return {statePlugins:{spec:{wrapSelectors:{allowTryItOutFor:() => () => false}}}}}"
DISABLE_TRY_IT_OUT_PLUGIN: ", DisableTryItOutPlugin"
run: |
yes | cp -rf node_modules/swagger-ui-dist/* docs
sed -i "/window\.onload\s=\sfunction()\s{/a $DISABLE_TRY_IT_OUT_JS_METHOD" docs/swagger-initializer.js
sed -i "s#https://petstore\.swagger\.io/v2/swagger\.json#$SPEC_TO_DISPLAY#g" docs/swagger-initializer.js
sed -i "/SwaggerUIBundle\.plugins\.DownloadUrl/a $DISABLE_TRY_IT_OUT_PLUGIN" docs/swagger-initializer.js
- name: Commit updated documentation files
if: steps.verify-changed-files.outputs.files_changed == 'true'
uses: EndBug/add-and-commit@v9
with:
add: docs
message: 'chore: update documentation'
31 changes: 31 additions & 0 deletions .github/workflows/publish-tom-server.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs

name: publish-tom-federation-server

on:
workflow_call:

jobs:
publish-docker:
runs-on: ubuntu-latest
if: github.event_name == 'push'
steps:
- uses: actions/checkout@v3
- name: Get all src files that have changed
id: changed-files
uses: tj-actions/changed-files@v41
with:
files: |
packages/federation-server/**/*
.github/workflows/**
- name: Publish to dockerhub
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: linagora/tom-federation-server
username: ${{ secrets.DOCKERHUB_USER }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
workdir: "${{ github.workspace }}"
context: .
buildoptions: "-t linagora/tom-federation-server -f Dockerfile"
tags: "latest"
14 changes: 13 additions & 1 deletion .github/workflows/push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,19 @@ jobs:
name: Build And Test
uses: ./.github/workflows/build-and-test.yml
secrets: inherit
publish:
publish-federation-server:
name: Publish Federation Server
uses: ./.github/workflows/publish-tom-federation-server.yml
secrets: inherit
publish-tom-server:
name: Publish ToM Server
uses: ./.github/workflows/publish-tom--server.yml
secrets: inherit
publish-matrix-invite:
name: Publish Matrix Invite
uses: ./.github/workflows/publish-matrix-invite.yml
secrets: inherit
upadte-docs:
name: Update Docs
uses: ./.github/workflows/update-docs.yml
secrets: inherit
5 changes: 1 addition & 4 deletions .github/workflows/update-docs.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
name: update-docs

on:
workflow_run:
workflows: [build-and-test]
types:
- completed
workflow_call:

jobs:
update-doc:
Expand Down

0 comments on commit 88d5e81

Please sign in to comment.