Skip to content

Dev To Stage

Dev To Stage #69

on:
pull_request:
branches: [stage]
types:
- closed
workflow_dispatch:
jobs:
Build:
environment: Stage
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true
steps:
- uses: actions/checkout@v2
- name: Create env file
run: |
touch tdei-ui/.env
echo REACT_APP_URL=${{ vars.REACT_APP_URL }} >> tdei-ui/.env
echo REACT_APP_ADMIN_EMAIL= ${{ vars.REACT_APP_ADMIN_EMAIL }} >> tdei-ui/.env
echo REACT_APP_OSM_URL= ${{vars.REACT_APP_OSM_URL}} >> tdei-ui/.env
echo REACT_APP_TDEI_WORKSPACE_URL= ${{vars.REACT_APP_TDEI_WORKSPACE_URL}} >> tdei-ui/.env
echo REACT_APP_DATAVIEWER_URL = ${{vars.REACT_APP_DATAVIEWER_URL}} >> tdei-ui/.env
echo REACT_APP_ENV = ${{vars.REACT_APP_ENV}} >> tdei-ui/.env
echo REACT_APP_PORTAL_URL = ${{vars.REACT_APP_PORTAL_URL}} >> tdei-ui/.env
echo REACT_APP_IOS_INSTALL_URL= ${{vars.REACT_APP_IOS_INSTALL_URL}} >> tdei-ui/.env
echo REACT_APP_ANDROID_INSTALL_URL=${{vars.REACT_APP_ANDROID_INSTALL_URL}} >> tdei-ui/.env
echo REACT_APP_SPATIAL_GUIDE_URL=${{vars.REACT_APP_SPATIAL_GUIDE_URL}} >> tdei-ui/.env
echo REACT_APP_DEFAULT_SHARE_REFERRAL_CODE=${{vars.REACT_APP_DEFAULT_SHARE_REFERRAL_CODE}} >> tdei-ui/.env
- name: Build react app
run: |
cd tdei-ui && npm install
rm -rf build/
unset CI
npm run build-prod
- uses: azure/docker-login@v1
with:
login-server: ${{ secrets.REGISTRY_DOMAIN }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Publish image to Azure Registry
run: |
docker build -t ${{ secrets.REGISTRY_DOMAIN }}/${{ secrets.REGISTRY_REPO }}:${{ github.sha }} -t ${{ secrets.REGISTRY_DOMAIN }}/${{ secrets.REGISTRY_REPO }}:${{ github.ref_name == 'main' && 'prod' || github.ref_name }}${{ github.ref_name != 'main' && '-latest' || 'latest' }} .
docker push ${{ secrets.REGISTRY_DOMAIN }}/${{ secrets.REGISTRY_REPO }} --all-tags
Deploy:
needs: Build
environment:
name: Stage
runs-on: ubuntu-latest
steps:
- name: Login to Azure
uses: azure/login@v2.0.0
with:
creds: ${{secrets.TDEI_CORE_AZURE_CREDS}}
- name: Deploy to Stage
uses: azure/webapps-deploy@v2
with:
app-name: ${{ secrets.AZURE_WEBAPP_NAME }}
images: ${{ secrets.REGISTRY_DOMAIN }}/${{ secrets.REGISTRY_REPO }}:${{ github.sha }}