Merge pull request #4258 from mattermost/update-prod-workflow
Update production release workflow for MPA
This commit is contained in:
commit
93d5d9bef8
1 changed files with 101 additions and 31 deletions
132
.github/workflows/prod-release.yml
vendored
132
.github/workflows/prod-release.yml
vendored
|
@ -5,6 +5,7 @@ on: workflow_dispatch
|
||||||
env:
|
env:
|
||||||
EXCLUDE_SERVER: true
|
EXCLUDE_SERVER: true
|
||||||
EXCLUDE_ENTERPRISE: true
|
EXCLUDE_ENTERPRISE: true
|
||||||
|
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
|
@ -14,21 +15,38 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
path: "focalboard"
|
||||||
|
- id: "mattermostServer"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref: ${{ env.BRANCH_NAME }}
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
if: steps.mattermostServer.outcome == 'failure'
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref : "master"
|
||||||
|
|
||||||
- name: Replace token 1 server
|
- name: Replace token 1 server
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 1 webapp
|
- name: Replace token 1 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: Replace token 2 server
|
- name: Replace token 2 server
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 2 webapp
|
- name: Replace token 2 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: npm ci
|
- name: npm ci
|
||||||
run: cd webapp; npm ci --no-optional
|
run: cd focalboard/webapp; npm ci --no-optional
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@v3
|
uses: actions/setup-go@v3
|
||||||
|
@ -50,7 +68,7 @@ jobs:
|
||||||
run: sudo apt-get install libwebkit2gtk-4.0-dev
|
run: sudo apt-get install libwebkit2gtk-4.0-dev
|
||||||
|
|
||||||
- name: Build Linux server and app
|
- name: Build Linux server and app
|
||||||
run: make server-linux-package linux-app
|
run: cd focalboard; make server-linux-package linux-app
|
||||||
env:
|
env:
|
||||||
BUILD_NUMBER: ${{ github.run_id }}
|
BUILD_NUMBER: ${{ github.run_id }}
|
||||||
|
|
||||||
|
@ -58,13 +76,13 @@ jobs:
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: focalboard-server-linux-amd64.tar.gz
|
name: focalboard-server-linux-amd64.tar.gz
|
||||||
path: ${{ github.workspace }}/dist/focalboard-server-linux-amd64.tar.gz
|
path: ${{ github.workspace }}/focalboard/dist/focalboard-server-linux-amd64.tar.gz
|
||||||
|
|
||||||
- name: Upload app package
|
- name: Upload app package
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: focalboard-linux.tar.gz
|
name: focalboard-linux.tar.gz
|
||||||
path: ${{ github.workspace }}/linux/dist/focalboard-linux.tar.gz
|
path: ${{ github.workspace }}/focalboard/linux/dist/focalboard-linux.tar.gz
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
runs-on: macos-11
|
runs-on: macos-11
|
||||||
|
@ -73,21 +91,39 @@ jobs:
|
||||||
|
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
path: "focalboard"
|
||||||
|
- id: "mattermostServer"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref: ${{ env.BRANCH_NAME }}
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
if: steps.mattermostServer.outcome == 'failure'
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref : "master"
|
||||||
|
|
||||||
- name: Replace token 1 server
|
- name: Replace token 1 server
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 1 webapp
|
- name: Replace token 1 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: Replace token 2 server
|
- name: Replace token 2 server
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 2 webapp
|
- name: Replace token 2 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: npm ci
|
- name: npm ci
|
||||||
run: cd webapp; npm ci --no-optional
|
run: cd focalboard/webapp; npm ci --no-optional
|
||||||
|
run: cd focalboard/mattermost-plugin/webapp && npm ci
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@v3
|
uses: actions/setup-go@v3
|
||||||
|
@ -98,7 +134,7 @@ jobs:
|
||||||
run: ls -n /Applications/ | grep Xcode*
|
run: ls -n /Applications/ | grep Xcode*
|
||||||
|
|
||||||
- name: Build macOS
|
- name: Build macOS
|
||||||
run: make mac-app
|
run: cd focalboard; make mac-app
|
||||||
env:
|
env:
|
||||||
DEVELOPER_DIR: /Applications/Xcode_13.2.1.app/Contents/Developer
|
DEVELOPER_DIR: /Applications/Xcode_13.2.1.app/Contents/Developer
|
||||||
BUILD_NUMBER: ${{ github.run_id }}
|
BUILD_NUMBER: ${{ github.run_id }}
|
||||||
|
@ -107,7 +143,7 @@ jobs:
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: focalboard-mac.zip
|
name: focalboard-mac.zip
|
||||||
path: ${{ github.workspace }}/mac/dist/focalboard-mac.zip
|
path: ${{ github.workspace }}/focalboard/mac/dist/focalboard-mac.zip
|
||||||
|
|
||||||
windows:
|
windows:
|
||||||
runs-on: windows-2022
|
runs-on: windows-2022
|
||||||
|
@ -115,24 +151,41 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
path: "focalboard"
|
||||||
|
- id: "mattermostServer"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref: ${{ env.BRANCH_NAME }}
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
if: steps.mattermostServer.outcome == 'failure'
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref : "master"
|
||||||
|
|
||||||
- name: Replace token 1 server
|
- name: Replace token 1 server
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 1 webapp
|
- name: Replace token 1 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: Replace token 2 server
|
- name: Replace token 2 server
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 2 webapp
|
- name: Replace token 2 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: Add msbuild to PATH
|
- name: Add msbuild to PATH
|
||||||
uses: microsoft/setup-msbuild@v1.1
|
uses: microsoft/setup-msbuild@v1.1
|
||||||
|
|
||||||
- name: npm ci
|
- name: npm ci
|
||||||
run: cd webapp; npm ci --no-optional
|
run: cd focalboard/webapp; npm ci --no-optional
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@v3
|
uses: actions/setup-go@v3
|
||||||
|
@ -148,7 +201,7 @@ jobs:
|
||||||
run: nuget restore win-wpf\Focalboard.sln
|
run: nuget restore win-wpf\Focalboard.sln
|
||||||
|
|
||||||
- name: Build Windows WPF app
|
- name: Build Windows WPF app
|
||||||
run: make win-wpf-app
|
run: cd focalboard; make win-wpf-app
|
||||||
env:
|
env:
|
||||||
BUILD_NUMBER: ${{ github.run_id }}
|
BUILD_NUMBER: ${{ github.run_id }}
|
||||||
|
|
||||||
|
@ -156,13 +209,13 @@ jobs:
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: focalboard.msix
|
name: focalboard.msix
|
||||||
path: ${{ github.workspace }}/win-wpf/focalboard.msix
|
path: ${{ github.workspace }}/focalboard/win-wpf/focalboard.msix
|
||||||
|
|
||||||
- name: Upload app zip package
|
- name: Upload app zip package
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: focalboard-win.zip
|
name: focalboard-win.zip
|
||||||
path: ${{ github.workspace }}/win-wpf/dist/focalboard-win.zip
|
path: ${{ github.workspace }}/focalboard/win-wpf/dist/focalboard-win.zip
|
||||||
|
|
||||||
plugin-release:
|
plugin-release:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
|
@ -170,21 +223,38 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
path: "focalboard"
|
||||||
|
- id: "mattermostServer"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref: ${{ env.BRANCH_NAME }}
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
if: steps.mattermostServer.outcome == 'failure'
|
||||||
|
with:
|
||||||
|
repository: "mattermost/mattermost-server"
|
||||||
|
fetch-depth: "20"
|
||||||
|
path: "mattermost-server"
|
||||||
|
ref : "master"
|
||||||
|
|
||||||
- name: Replace token 1 server
|
- name: Replace token 1 server
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 1 webapp
|
- name: Replace token 1 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: Replace token 2 server
|
- name: Replace token 2 server
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go
|
||||||
|
|
||||||
- name: Replace token 2 webapp
|
- name: Replace token 2 webapp
|
||||||
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/mattermost-plugin/webapp/src/index.tsx
|
run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_PROD_KEY }},g" ${{ github.workspace }}/focalboard/mattermost-plugin/webapp/src/index.tsx
|
||||||
|
|
||||||
- name: npm ci
|
- name: npm ci
|
||||||
run: cd webapp; npm ci --no-optional
|
run: cd focalboard/webapp; npm ci --no-optional
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@v3
|
uses: actions/setup-go@v3
|
||||||
|
@ -197,10 +267,10 @@ jobs:
|
||||||
node-version: 16.1.0
|
node-version: 16.1.0
|
||||||
|
|
||||||
- name: Build webapp
|
- name: Build webapp
|
||||||
run: make webapp
|
run: cd focalboard; make webapp
|
||||||
|
|
||||||
- name: npm ci plugin dependencies
|
- name: npm ci plugin dependencies
|
||||||
run: cd mattermost-plugin/webapp; npm ci --no-optional
|
run: cd focalboard/mattermost-plugin/webapp && npm ci
|
||||||
|
|
||||||
- name: Build plugin
|
- name: Build plugin
|
||||||
run: cd mattermost-plugin; make dist
|
run: cd mattermost-plugin; make dist
|
||||||
|
@ -214,4 +284,4 @@ jobs:
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: mattermost-plugin-focalboard.tar.gz
|
name: mattermost-plugin-focalboard.tar.gz
|
||||||
path: ${{ github.workspace }}/mattermost-plugin/dist/mattermost-plugin-focalboard.tar.gz
|
path: ${{ github.workspace }}/focalboard/mattermost-plugin/dist/mattermost-plugin-focalboard.tar.gz
|
||||||
|
|
Loading…
Reference in a new issue