Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
128 changes: 66 additions & 62 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@ name: Build, Test, and Push Docker images
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * 0"
- cron: '0 0 1,15 * *'
push:
branches:
- "main"
- 'main'
tags:
- "*"
- '*'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

env:
DOCKER_ORG_USERNAME: ${{ vars.DOCKER_ORG_USERNAME || 'meghsh' }}
Expand All @@ -18,7 +22,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php_version: ["7.4", "8.0", "8.1", "8.2", "8.3", "8.4"]
php_version: ['7.4', '8.0', '8.1', '8.2', '8.3', '8.4']
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -71,66 +75,66 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php_version: ["7.4", "8.1", "8.2", "8.3", "8.4" ]
php_version: ['7.4', '8.1', '8.2', '8.3', '8.4']
include:
- php_version: "7.4"
lsphp: "lsphp74"
- php_version: "8.1"
lsphp: "lsphp81"
- php_version: "8.2"
lsphp: "lsphp82"
- php_version: "8.3"
lsphp: "lsphp83"
- php_version: "8.4"
lsphp: "lsphp84"
- php_version: '7.4'
lsphp: 'lsphp74'
- php_version: '8.1'
lsphp: 'lsphp81'
- php_version: '8.2'
lsphp: 'lsphp82'
- php_version: '8.3'
lsphp: 'lsphp83'
- php_version: '8.4'
lsphp: 'lsphp84'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout
uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
image: tonistiigi/binfmt:qemu-v7.0.0-28

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build OpenLiteSpeed Docker image
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
load: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}

- name: Install Container Structure Test
run: |
curl -LO https://storage.googleapis.com/container-structure-test/latest/container-structure-test-linux-amd64
chmod +x container-structure-test-linux-amd64
sudo mv container-structure-test-linux-amd64 /usr/local/bin/container-structure-test

- name: Run Container Structure Tests
run: |
container-structure-test test --image ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }} --config ols-structure-test.yaml

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Push OpenLiteSpeed Docker image
if: success()
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build OpenLiteSpeed Docker image
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
load: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}

- name: Install Container Structure Test
run: |
curl -LO https://storage.googleapis.com/container-structure-test/latest/container-structure-test-linux-amd64
chmod +x container-structure-test-linux-amd64
sudo mv container-structure-test-linux-amd64 /usr/local/bin/container-structure-test

- name: Run Container Structure Tests
run: |
container-structure-test test --image ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }} --config ols-structure-test.yaml

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Push OpenLiteSpeed Docker image
if: success()
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}
74 changes: 39 additions & 35 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ on:
branches:
- main

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

env:
DOCKER_ORG_USERNAME: ${{ vars.DOCKER_ORG_USERNAME || 'meghsh' }}

Expand All @@ -14,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php_version: ["7.4", "8.0", "8.1", "8.2", "8.3", "8.4"]
php_version: ['7.4', '8.0', '8.1', '8.2', '8.3', '8.4']
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -52,43 +56,43 @@ jobs:
strategy:
matrix:
include:
- php_version: "7.4"
lsphp: "lsphp74"
- php_version: "8.1"
lsphp: "lsphp81"
- php_version: "8.2"
lsphp: "lsphp82"
- php_version: "8.3"
lsphp: "lsphp83"
- php_version: "8.4"
lsphp: "lsphp84"
- php_version: '7.4'
lsphp: 'lsphp74'
- php_version: '8.1'
lsphp: 'lsphp81'
- php_version: '8.2'
lsphp: 'lsphp82'
- php_version: '8.3'
lsphp: 'lsphp83'
- php_version: '8.4'
lsphp: 'lsphp84'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout
uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build OpenLiteSpeed Docker image
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
load: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}
- name: Build OpenLiteSpeed Docker image
uses: docker/build-push-action@v5
with:
file: openlitespeed/Dockerfile
context: openlitespeed
load: true
tags: ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }}
build-args: |
PHP_VERSION=${{ matrix.php_version }}
LSPHP=${{ matrix.lsphp }}

- name: Install Container Structure Test
run: |
curl -LO https://storage.googleapis.com/container-structure-test/latest/container-structure-test-linux-amd64
chmod +x container-structure-test-linux-amd64
sudo mv container-structure-test-linux-amd64 /usr/local/bin/container-structure-test
- name: Install Container Structure Test
run: |
curl -LO https://storage.googleapis.com/container-structure-test/latest/container-structure-test-linux-amd64
chmod +x container-structure-test-linux-amd64
sudo mv container-structure-test-linux-amd64 /usr/local/bin/container-structure-test

- name: Run Container Structure Tests
run: |
container-structure-test test --image ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }} --config ols-structure-test.yaml
- name: Run Container Structure Tests
run: |
container-structure-test test --image ${{ env.DOCKER_ORG_USERNAME }}/openlitespeed:${{ matrix.php_version }} --config ols-structure-test.yaml
Loading