Skip to content

Commit

Permalink
ci fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
pjaudiomv committed May 21, 2023
1 parent ecb5356 commit 20c8895
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 114 deletions.
35 changes: 11 additions & 24 deletions .github/workflows/latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,37 +2,23 @@ name: 'latest'

on:
push:
branches: [ 'master' ]
branches: [ 'main' ]

jobs:
lint:
runs-on: ubuntu-latest
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Check out code 🛒
uses: actions/checkout@v3

- name: Setup PHP
- name: Setup PHP 🐫
uses: shivammathur/setup-php@v2
with:
php-version: 7.4

- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
if: steps.composer-cache.outputs.cache-hit != 'true'
id: install-dependencies
run: make composer

- name: PHPCS checker
- name: PHPCS checker 🧹
id: php-codesniffer
run: make lint

Expand All @@ -57,29 +43,30 @@ jobs:
PLUGIN: "bmlt-versions"
needs: [ lint ]
steps:
- uses: actions/checkout@v3
- name: Check out code 🛒
uses: actions/checkout@v3
id: code-checkout

- name: Prepare to deploy
- name: Prepare to deploy 🔧
run: |
export FILENAME=${PLUGIN}-build-${GITHUB_RUN_NUMBER}-${GITHUB_SHA}
export ZIP_FILENAME=$FILENAME.zip
echo "ZIP_FILENAME=${ZIP_FILENAME}" >> $GITHUB_ENV
make build
mkdir -p ${DIST_DIR_S3} && cp ${BUILD_DIR}/${ZIP_FILENAME} ${DIST_DIR_S3}/${ZIP_FILENAME}
- name: configure aws credentials
- name: configure aws credentials 🪪
uses: aws-actions/configure-aws-credentials@v1
with:
role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/github-actions/gh-ci-s3-artifact
role-session-name: gh-actions-${{ env.PLUGIN }}
aws-region: us-east-1

- name: copy artifact to s3
- name: copy artifact to s3 🪣
run: |
aws s3 cp $DIST_DIR_S3/$ZIP_FILENAME s3://$S3_BUCKET/$S3_KEY/$ZIP_FILENAME
- name: Publish Release to Latest WP
- name: Publish Release to Latest WP 🎉
id: publish_latest
uses: bmlt-enabled/wordpress-releases-github-action@v1
with:
Expand Down
23 changes: 5 additions & 18 deletions .github/workflows/pull-requests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,20 @@ name: 'pull-request'

on:
pull_request:
branches: [ 'master' ]
branches: [ 'main' ]

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check out code 🛒
uses: actions/checkout@v3
id: code-checkout

- name: Validate composer.json and composer.lock
- name: Validate composer.json and composer.lock 🎼
id: composer-validate
run: composer validate

- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
if: steps.composer-cache.outputs.cache-hit != 'true'
id: install-dependencies
run: make composer

- name: PHPCS checker
- name: PHPCS checker 🧹
id: php-codesniffer
run: make lint
94 changes: 22 additions & 72 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,29 +10,15 @@ jobs:
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
steps:
- name: Check out code
- name: Check out code 🛒
uses: actions/checkout@v3

- name: Setup PHP
- name: Setup PHP 🐫
uses: shivammathur/setup-php@v2
with:
php-version: 7.4

- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
if: steps.composer-cache.outputs.cache-hit != 'true'
id: install-dependencies
run: make composer

- name: PHPCS checker
- name: PHPCS checker 🧹
id: php-codesniffer
run: make lint

Expand All @@ -53,71 +39,35 @@ jobs:
MAINFILE: "bmlt-versions.php"
needs: [ lint ]
steps:
- uses: actions/checkout@v3
id: code-checkout
- name: Check out code 🛒
uses: actions/checkout@v3

- name: Build package
- name: Build package 🔧
id: build-package
run: |
export ZIP_FILENAME=${PLUGIN}-build${GITHUB_RUN_NUMBER}-${GITHUB_SHA}.zip
export ZIP_FILENAME=${PLUGIN}-${GITHUB_REF##*/}.zip
find ./ -type d | xargs chmod 755
find ./ -name '*.php' | xargs chmod 644
echo ${GITHUB_SHA} > build.txt
make build
zip $ZIP_FILENAME build.txt
mv $ZIP_FILENAME ${PLUGIN}-${GITHUB_REF##*/}.zip
zip $BUILD_DIR/$ZIP_FILENAME build.txt
mkdir -p $DIST_DIR_GITHUB && cp $BUILD_DIR/$ZIP_FILENAME $DIST_DIR_GITHUB/$GITHUB_RELEASE_FILENAME
echo "ARTIFACT_PATH=$DIST_DIR_GITHUB/$GITHUB_RELEASE_FILENAME" >> $GITHUB_ENV
echo "ARTIFACT_NAME=${ZIP_FILENAME}" >> $GITHUB_ENV
- name: Generate Release Notes 📝
if: github.ref_type == 'tag'
run: |
curl -LO https://raw.githubusercontent.com/bmlt-enabled/release-notes-tool/master/gh-release-notes.sh
chmod +x gh-release-notes.sh
./gh-release-notes.sh readme.txt "wp"
echo "ARTIFACT_PATH=./${PLUGIN}-${GITHUB_REF##*/}.zip" >> $GITHUB_ENV
echo "ARTIFACT_NAME=${PLUGIN}-${GITHUB_REF##*/}.zip" >> $GITHUB_ENV
- name: Release beta
if: contains(github.ref, 'beta')
id: beta_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
prerelease: true
draft: false

- name: Upload Beta Asset
if: contains(github.ref, 'beta')
id: beta-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.beta_release.outputs.upload_url }}
asset_path: ${{ env.ARTIFACT_PATH }}
asset_name: ${{ env.ARTIFACT_NAME }}
asset_content_type: application/zip

- name: Release stable
if: "!contains(github.ref, 'beta')"
id: stable_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body_path: "changelog.txt"
prerelease: false
draft: false
RELEASE_TYPE=$(if [[ "$GITHUB_REF_NAME" =~ "beta" ]]; then echo "true"; else echo "false"; fi)
echo "RELEASE_TYPE=${RELEASE_TYPE}" >> $GITHUB_ENV
- name: Upload Stable Asset
if: "!contains(github.ref, 'beta')"
id: stable-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Release 🎉
uses: ncipollo/[email protected]
if: github.ref_type == 'tag'
with:
upload_url: ${{ steps.stable_release.outputs.upload_url }}
asset_path: ${{ env.ARTIFACT_PATH }}
asset_name: ${{ env.ARTIFACT_NAME }}
asset_content_type: application/zip
artifacts: ${{ env.ARTIFACT_PATH }}
bodyFile: "changelog.txt"
prerelease: ${{ env.RELEASE_TYPE }}

0 comments on commit 20c8895

Please sign in to comment.