diff --git a/.github/workflows/angr-ci.yml b/.github/workflows/angr-ci.yml index 17c325e..50e08c9 100644 --- a/.github/workflows/angr-ci.yml +++ b/.github/workflows/angr-ci.yml @@ -22,7 +22,7 @@ on: jobs: build: name: Build - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 container: image: ${{ inputs.container_image }} steps: @@ -38,7 +38,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 container: image: ${{ inputs.container_image }} needs: build @@ -51,7 +51,7 @@ jobs: test: name: Test - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 container: image: ${{ inputs.container_image }} options: -v /var/run/docker.sock:/var/run/docker.sock -v /proc:/hostproc --cap-add=SYS_PTRACE --security-opt seccomp:unconfined diff --git a/.github/workflows/publish-ci-image.yml b/.github/workflows/publish-ci-image.yml new file mode 100644 index 0000000..f236355 --- /dev/null +++ b/.github/workflows/publish-ci-image.yml @@ -0,0 +1,23 @@ +name: Publish angr ci docker image + +on: + push: + branches: ["master"] + workflow_dispatch: + +jobs: + update: + name: Build and publish angr docker image + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + - name: Build ci image + run: | + docker build -t angr/ci:3 ci-image + - name: Login to docker hub + run: echo $DOCKER_PASSWORD | docker login -u angrbot --password-stdin + env: + DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} + - name: Push ci image + run: docker push angr/ci:3 diff --git a/ci-image/Dockerfile b/ci-image/Dockerfile index 6f5e484..d560a83 100644 --- a/ci-image/Dockerfile +++ b/ci-image/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:focal +FROM ubuntu:22.04 ENV DEBIAN_FRONTEND noninteractive USER root WORKDIR /root diff --git a/ci-image/scripts/azure-build.sh b/ci-image/scripts/ga-build.sh similarity index 100% rename from ci-image/scripts/azure-build.sh rename to ci-image/scripts/ga-build.sh diff --git a/ci-image/scripts/azure-lint.sh b/ci-image/scripts/ga-lint.sh similarity index 100% rename from ci-image/scripts/azure-lint.sh rename to ci-image/scripts/ga-lint.sh diff --git a/ci-image/scripts/azure-test.sh b/ci-image/scripts/ga-test.sh similarity index 100% rename from ci-image/scripts/azure-test.sh rename to ci-image/scripts/ga-test.sh diff --git a/resources/jobs/release/build-wheels.yml b/resources/jobs/release/build-wheels.yml index ad751da..16b017c 100644 --- a/resources/jobs/release/build-wheels.yml +++ b/resources/jobs/release/build-wheels.yml @@ -1,7 +1,7 @@ parameters: - name: pools type: object - default: [ "ubuntu-20.04", "windows-2022", "macos-11" ] + default: [ "ubuntu-22.04", "windows-2022", "macos-11" ] jobs: - ${{ each pool in parameters.pools }}: diff --git a/resources/jobs/release/create-release-commits.yml b/resources/jobs/release/create-release-commits.yml index 757f8ed..2719a6b 100644 --- a/resources/jobs/release/create-release-commits.yml +++ b/resources/jobs/release/create-release-commits.yml @@ -2,7 +2,7 @@ jobs: - job: displayName: Create release tags pool: - vmImage: ubuntu-20.04 + vmImage: ubuntu-22.04 steps: - template: setup-host.yml parameters: diff --git a/resources/jobs/release/publish-pypi.yml b/resources/jobs/release/publish-pypi.yml index f19056d..f088741 100644 --- a/resources/jobs/release/publish-pypi.yml +++ b/resources/jobs/release/publish-pypi.yml @@ -4,18 +4,18 @@ parameters: default: true - name: artifacts type: object - default: [ "sdist", "wheels-windows-2022", "wheels-macos-11", "wheels-ubuntu-20.04" ] + default: [ "sdist", "wheels-windows-2022", "wheels-macos-11", "wheels-ubuntu-22.04" ] jobs: - job: displayName: Publish artifacts to PyPI pool: - vmImage: ubuntu-20.04 + vmImage: ubuntu-22.04 steps: - task: UsePythonVersion@0 - displayName: Use python 3.8 + displayName: Use python 3.10 inputs: - versionSpec: 3.8 + versionSpec: "3.10" - script: pip install twine diff --git a/resources/jobs/release/publish-release-commits.yml b/resources/jobs/release/publish-release-commits.yml index 80f8b72..d5c3433 100644 --- a/resources/jobs/release/publish-release-commits.yml +++ b/resources/jobs/release/publish-release-commits.yml @@ -7,7 +7,7 @@ jobs: - job: displayName: Publish release commits pool: - vmImage: ubuntu-20.04 + vmImage: ubuntu-22.04 steps: - template: setup-host.yml parameters: diff --git a/resources/jobs/release/setup-host.yml b/resources/jobs/release/setup-host.yml index 18ab4c3..1461dc3 100644 --- a/resources/jobs/release/setup-host.yml +++ b/resources/jobs/release/setup-host.yml @@ -20,9 +20,9 @@ steps: - ${{ if eq(parameters.python, 'python') }}: - task: UsePythonVersion@0 - displayName: Use python 3.8 + displayName: Use python 3.10 inputs: - versionSpec: 3.8 + versionSpec: "3.10" - ${{ if parameters.git }}: - bash: scripts/setup_git.sh diff --git a/resources/jobs/release/verify.yml b/resources/jobs/release/verify.yml index eeafba9..6c89b1d 100644 --- a/resources/jobs/release/verify.yml +++ b/resources/jobs/release/verify.yml @@ -1,7 +1,7 @@ parameters: - name: pools type: object - default: [ "ubuntu-20.04", "windows-2022", "macos-11" ] + default: [ "ubuntu-22.04", "windows-2022", "macos-11" ] jobs: - ${{ each pool in parameters.pools }}: @@ -20,15 +20,15 @@ jobs: - task: DownloadPipelineArtifact@2 displayName: Download artifact wheels-${{ pool }} - condition: not(eq('${{ pool }}', 'ubuntu-20.04')) + condition: not(eq('${{ pool }}', 'ubuntu-22.04')) inputs: - artifactName: wheels-ubuntu-20.04 - targetPath: wheels-ubuntu-20.04 + artifactName: wheels-ubuntu-22.04 + targetPath: wheels-ubuntu-22.04 - bash: | python -m venv angr_venv source angr_venv/bin/activate &> /dev/null || source angr_venv/Scripts/activate - export PIP_FIND_LINKS="wheels-${{ pool }} wheels-ubuntu-20.04" + export PIP_FIND_LINKS="wheels-${{ pool }} wheels-ubuntu-22.04" pip install wheels-${{ pool }}/*.whl displayName: Test wheel install