ci: improve CI/CD automation pipeline
This commit is contained in:
@@ -43,12 +43,29 @@ jobs:
|
|||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Log in to GitHub Container Registry
|
||||||
|
if: github.event_name != 'pull_request'
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: ghcr.io
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: Make scripts executable
|
- name: Make scripts executable
|
||||||
run: chmod +x ./ci/scripts/occt.sh
|
run: chmod +x ./ci/scripts/occt.sh
|
||||||
|
|
||||||
- name: Build OCCT and run tests in Docker
|
- name: Build OCCT and run tests in Docker
|
||||||
run: ./ci/scripts/occt.sh --unit-testing
|
run: ./ci/scripts/occt.sh --unit-testing
|
||||||
|
|
||||||
|
- name: Tag and push OCCT image
|
||||||
|
if: github.event_name != 'pull_request'
|
||||||
|
run: |
|
||||||
|
docker tag occt-builder:latest ghcr.io/${{ github.repository }}/occt-builder:latest
|
||||||
|
docker push ghcr.io/${{ github.repository }}/occt-builder:latest
|
||||||
|
|
||||||
build-ffi:
|
build-ffi:
|
||||||
name: FFI
|
name: FFI
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
@@ -58,8 +75,29 @@ jobs:
|
|||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Log in to GitHub Container Registry
|
||||||
|
if: github.event_name != 'pull_request'
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: ghcr.io
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Pull OCCT image or build locally
|
||||||
|
run: |
|
||||||
|
docker pull ghcr.io/${{ github.repository }}/occt-builder:latest || ./ci/scripts/occt.sh --build-only
|
||||||
|
|
||||||
- name: Make scripts executable
|
- name: Make scripts executable
|
||||||
run: chmod +x ./ci/scripts/ffi.sh
|
run: chmod +x ./ci/scripts/ffi.sh
|
||||||
|
|
||||||
- name: Build and test FFI in Docker
|
- name: Build and test FFI in Docker
|
||||||
run: ./ci/scripts/ffi.sh --tests
|
run: ./ci/scripts/ffi.sh --tests
|
||||||
|
|
||||||
|
- name: Tag and push FFI image
|
||||||
|
if: github.event_name != 'pull_request'
|
||||||
|
run: |
|
||||||
|
docker tag ffi-builder:latest ghcr.io/${{ github.repository }}/ffi-builder:latest
|
||||||
|
docker push ghcr.io/${{ github.repository }}/ffi-builder:latest
|
||||||
|
|||||||
Reference in New Issue
Block a user