Skip to content

Publish latest imaptest #38

Publish latest imaptest

Publish latest imaptest #38

Workflow file for this run

name: Publish latest imaptest
on:
pull_request:
push:
paths:
- 'src/**'
workflow_dispatch:
jobs:
build_matrix:
strategy:
matrix:
os: [ubuntu-24.04, ubuntu-22.04, ubuntu-20.04]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout imaptest
uses: actions/checkout@v4
with:
path: imaptest
- name: Checkout dovecot
uses: actions/checkout@v4
with:
repository: dovecot/core
path: core
- name: Install gettext (missing from GH Actions image)
run: |
sudo apt install -y gettext
- name: Build dovecot libraries
working-directory: ${{ github.workspace }}/core
run: |
./autogen.sh
./configure
make -j8
- name: Build imaptest
working-directory: ${{ github.workspace }}/imaptest
run: |
./autogen.sh
./configure --with-dovecot=../core
make -j8
- name: Strip imaptest
run: |
strip --strip-all imaptest/src/imaptest
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: imaptest-x86_64-${{ matrix.os }}
path: imaptest/src/imaptest
publish:
needs: build_matrix
runs-on: ubuntu-latest
steps:
- name: Download items
uses: actions/download-artifact@v4
with:
path: ${{ github.workspace }}/build
merge-multiple: true
- name: List files
run: |
find
- name: Generate SHA256SUMS.txt
working-directory: ${{ github.workspace }}/build
run: |
sha256sum imaptest-* > SHA256SUMS.txt
- name: Update latest Release
uses: andelf/nightly-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: test-release
name: 'ImapTest Latest Release'
draft: false
body: |
ImapTest semi-static builds. These work on most machines with matching
libc.
files: |
${{ github.workspace }}/build/imaptest-*
${{ github.workspace }}/build/SHA256SUMS.txt