You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.0 KiB
YAML
79 lines
2.0 KiB
YAML
name: Test Mix
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- '**.md'
|
|
- '**.bat'
|
|
- 'ecs/**'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '**.md'
|
|
- '**.bat'
|
|
- 'ecs/**'
|
|
|
|
jobs:
|
|
build-mix:
|
|
name: Build Mix
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
fail-fast: true
|
|
max-parallel: 1
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v1
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v1
|
|
|
|
- name: Build mix image
|
|
uses: docker/build-push-action@v2
|
|
with:
|
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
run: |
|
|
(cd mix && docker build -t ejabberd/mix .)
|
|
|
|
- name: Build ecs image
|
|
uses: docker/build-push-action@v2
|
|
with:
|
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
run: |
|
|
cd ecs
|
|
./build.sh latest
|
|
|
|
- name: Run ecs image
|
|
run: |
|
|
docker images
|
|
docker run --name ejabberd -d -p 5222:5222 ejabberd/ecs:latest
|
|
|
|
- name: Wait ejabberd started
|
|
run: |
|
|
docker exec ejabberd bin/ejabberdctl started
|
|
|
|
- name: Check ecs results
|
|
run: |
|
|
docker ps -s
|
|
docker logs ejabberd
|
|
docker logs ejabberd | grep -q "Start accepting TCP connections" || exit 1
|
|
docker logs ejabberd | grep -q "error" && exit 1 || exit 0
|
|
docker logs ejabberd | grep -q "Error" && exit 1 || exit 0
|
|
|
|
- name: Save image
|
|
run: |
|
|
docker image save ejabberd/ecs:latest --output ejabberd-latest.tar
|
|
|
|
- name: Upload image
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: ejabberd-image
|
|
path: ejabberd-latest.tar
|
|
|
|
- run: |
|
|
echo "::notice::To get this image, download ejabberd-image.zip, "\
|
|
"uncompress it and run: " \
|
|
"docker image load -i ejabberd-latest.tar"
|