Video tutorial on how setup and deploy pwa-studio on ubuntu production server using magento-actions :
name: m2-actions-test
on: [push]
jobs:
magento2-build:
runs-on: ubuntu-latest
name: 'm2 tests & build'
services:
mysql:
image: docker://mysql:8.0
env:
MYSQL_ROOT_PASSWORD: magento
MYSQL_DATABASE: magento
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
elasticsearch:
image: docker://elasticsearch:7.1.0
ports:
- 9200:9200
options: -e="discovery.type=single-node" --health-cmd="curl http://localhost:9200/_cluster/health" --health-interval=10s --health-timeout=5s --health-retries=10
steps:
- uses: actions/checkout@v2
- name: 'install fresh magento repo'
#if: always()
uses: MAD-I-T/magento-actions@master
env:
COMPOSER_AUTH: ${{secrets.COMPOSER_AUTH}}
with:
process: 'create-project'
magento_version: 2.4.5
#no_push: 1
- name: 'install fresh pwa-studio project'
uses: MAD-I-T/magento-actions@v3.12
if: ${{false}}
with:
process: 'pwa-studio-install'
#no_push: 1
- name: 'launch magento2 build'
if: ${{false}}
#if: always()
id: build
uses: MAD-I-T/magento-actions@master
env:
COMPOSER_AUTH: ${{secrets.COMPOSER_AUTH}}
with:
process: 'build'
elasticsearch: 1
- name: 'launch magento2 zero downtime deploy'
if: ${{false}}
#if: always()
uses: MAD-I-T/magento-actions@master
env:
BUCKET_COMMIT: bucket-commit-${{github.sha}}.tar.gz
HOST_DEPLOY_PATH: ${{secrets.STAGE_HOST_DEPLOY_PATH}}
HOST_DEPLOY_PATH_BUCKET: ${{secrets.STAGE_HOST_DEPLOY_PATH}}/bucket
SSH_PRIVATE_KEY: ${{secrets.STAGE_SSH_PRIVATE_KEY}}
SSH_CONFIG: ${{secrets.STAGE_SSH_CONFIG}}
WRITE_USE_SUDO: false
with:
deployer: 'no-permission-check'
process: 'deploy-staging'
- name: 'unlock deployer if failure'
if: ${{false}}
#if: failure()
uses: MAD-I-T/magento-actions@master
env:
BUCKET_COMMIT: bucket-commit-${{github.sha}}.tar.gz
HOST_DEPLOY_PATH: ${{secrets.STAGE_HOST_DEPLOY_PATH}}
HOST_DEPLOY_PATH_BUCKET: ${{secrets.STAGE_HOST_DEPLOY_PATH}}/bucket
SSH_PRIVATE_KEY: ${{secrets.STAGE_SSH_PRIVATE_KEY}}
SSH_CONFIG: ${{secrets.STAGE_SSH_CONFIG}}
WRITE_USE_SUDO: false
with:
process: 'cleanup-staging'