2021-07-20 12:00:36 +02:00
|
|
|
name: Runtime
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
paths:
|
|
|
|
- '*'
|
|
|
|
- '!*.md'
|
2022-05-02 20:18:52 +02:00
|
|
|
- '.github/workflows/runtime.yml'
|
2021-07-20 12:00:36 +02:00
|
|
|
- 'checkouts/**'
|
|
|
|
- 'config/**'
|
|
|
|
- 'lib/**'
|
|
|
|
- 'm4/**'
|
|
|
|
- 'plugins/**'
|
|
|
|
- 'rel/**'
|
|
|
|
pull_request:
|
|
|
|
paths:
|
|
|
|
- '*'
|
|
|
|
- '!*.md'
|
2022-05-02 20:18:52 +02:00
|
|
|
- '.github/workflows/runtime.yml'
|
2021-07-20 12:00:36 +02:00
|
|
|
- 'checkouts/**'
|
|
|
|
- 'config/**'
|
|
|
|
- 'lib/**'
|
|
|
|
- 'm4/**'
|
|
|
|
- 'plugins/**'
|
|
|
|
- 'rel/**'
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
|
|
|
|
rebars:
|
|
|
|
name: Rebars
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-23 11:04:05 +02:00
|
|
|
otp: ['20', '25', '26', '27']
|
2021-07-20 12:00:36 +02:00
|
|
|
rebar: ['rebar', 'rebar3']
|
2024-05-23 19:00:15 +02:00
|
|
|
exclude:
|
|
|
|
- otp: '27'
|
|
|
|
rebar: 'rebar'
|
2024-02-01 17:02:14 +01:00
|
|
|
runs-on: ubuntu-22.04
|
2021-07-20 12:00:36 +02:00
|
|
|
container:
|
|
|
|
image: erlang:${{ matrix.otp }}
|
|
|
|
|
|
|
|
steps:
|
|
|
|
|
2023-09-11 08:16:03 +02:00
|
|
|
- uses: actions/checkout@v4
|
2021-07-20 12:00:36 +02:00
|
|
|
|
2024-01-02 20:21:52 +01:00
|
|
|
- name: Get compatible Rebar binaries
|
2024-02-19 16:04:54 +01:00
|
|
|
if: matrix.otp < 24
|
2024-01-02 20:21:52 +01:00
|
|
|
run: |
|
|
|
|
rm rebar
|
|
|
|
rm rebar3
|
|
|
|
wget https://github.com/processone/ejabberd/raw/21.12/rebar
|
|
|
|
wget https://github.com/processone/ejabberd/raw/21.12/rebar3
|
|
|
|
chmod +x rebar
|
|
|
|
chmod +x rebar3
|
|
|
|
|
2021-07-20 12:00:36 +02:00
|
|
|
- name: Prepare libraries
|
|
|
|
run: |
|
|
|
|
apt-get -qq update
|
2024-02-19 11:32:47 +01:00
|
|
|
apt-get purge -y libgd3 nginx
|
2021-07-20 12:00:36 +02:00
|
|
|
apt-get -qq install libexpat1-dev libgd-dev libpam0g-dev \
|
|
|
|
libsqlite3-dev libwebp-dev libyaml-dev
|
|
|
|
|
|
|
|
- name: Compile
|
|
|
|
run: |
|
|
|
|
./autogen.sh
|
2024-02-19 12:13:50 +01:00
|
|
|
./configure --with-rebar=./${{ matrix.rebar }} \
|
2021-07-20 12:00:36 +02:00
|
|
|
--prefix=/tmp/ejabberd \
|
|
|
|
--enable-all \
|
|
|
|
--disable-elixir \
|
2024-01-08 14:54:10 +01:00
|
|
|
--disable-tools \
|
2021-07-20 12:00:36 +02:00
|
|
|
--disable-odbc
|
|
|
|
make
|
|
|
|
|
|
|
|
- run: make xref
|
|
|
|
|
2024-01-17 13:55:50 +01:00
|
|
|
- name: Prepare rel (rebar2)
|
2021-07-20 12:00:36 +02:00
|
|
|
if: matrix.rebar == 'rebar'
|
|
|
|
run: |
|
2024-01-17 13:55:50 +01:00
|
|
|
mkdir -p _build/prod && ln -s `pwd`/rel/ _build/prod/rel
|
|
|
|
mkdir -p _build/dev && ln -s `pwd`/rel/ _build/dev/rel
|
2021-07-20 12:00:36 +02:00
|
|
|
|
2023-12-22 15:12:05 +01:00
|
|
|
- name: Run rel
|
2021-07-20 12:00:36 +02:00
|
|
|
run: |
|
|
|
|
make rel
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl started
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl register user1 localhost s0mePass
|
2023-12-22 15:12:05 +01:00
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl registered_users localhost > registered.log
|
2021-07-20 12:00:36 +02:00
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl stopped
|
|
|
|
|
2023-12-22 15:12:05 +01:00
|
|
|
- name: Run dev
|
2021-07-20 12:00:36 +02:00
|
|
|
run: |
|
|
|
|
make dev
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl started
|
2023-12-22 15:12:05 +01:00
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl register user2 localhost s0mePass
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl registered_users localhost >> registered.log
|
2021-07-20 12:00:36 +02:00
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl stopped
|
2023-12-22 15:12:05 +01:00
|
|
|
|
2023-12-22 22:19:25 +01:00
|
|
|
- name: Run install
|
|
|
|
run: |
|
|
|
|
make install
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl start \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl started
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl register user3 localhost s0mePass
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl registered_users localhost >> registered.log
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl stop \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl stopped
|
|
|
|
|
2023-12-22 15:12:05 +01:00
|
|
|
- name: View logs
|
|
|
|
run: |
|
|
|
|
echo "===> Registered:"
|
|
|
|
cat registered.log
|
|
|
|
echo "===> Prod:"
|
|
|
|
cat _build/prod/rel/ejabberd/logs/*
|
|
|
|
echo "===> Dev:"
|
2021-07-20 12:00:36 +02:00
|
|
|
cat _build/dev/rel/ejabberd/logs/*
|
2023-12-22 22:19:25 +01:00
|
|
|
echo "===> Install:"
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/*
|
2021-07-20 12:00:36 +02:00
|
|
|
|
2023-12-22 22:19:25 +01:00
|
|
|
- name: Check logs
|
2023-12-22 15:12:05 +01:00
|
|
|
run: |
|
|
|
|
grep -q '^user1$' registered.log
|
|
|
|
grep -q '^user2$' registered.log
|
2023-12-22 22:19:25 +01:00
|
|
|
grep -q '^user3$' registered.log
|
2023-12-22 15:12:05 +01:00
|
|
|
grep -q 'is started' _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/prod/rel/ejabberd/logs/ejabberd.log
|
2024-01-17 13:55:50 +01:00
|
|
|
test $(find _build/prod/rel/ -empty -name error.log)
|
2023-12-22 15:12:05 +01:00
|
|
|
grep -q 'is started' _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/dev/rel/ejabberd/logs/ejabberd.log
|
2024-01-17 13:55:50 +01:00
|
|
|
test $(find _build/dev/rel/ -empty -name error.log)
|
2023-12-22 22:19:25 +01:00
|
|
|
grep -q 'is started' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
grep -q 'is stopped' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
test $(find /tmp/ejabberd/var/log/ejabberd/ -empty -name error.log)
|
2023-12-22 15:12:05 +01:00
|
|
|
|
|
|
|
- name: View logs failures
|
2024-01-17 13:55:50 +01:00
|
|
|
if: always()
|
2023-12-22 15:12:05 +01:00
|
|
|
run: |
|
|
|
|
cat _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/prod/rel/ejabberd/logs/error.log
|
2023-12-26 13:37:16 +01:00
|
|
|
cat _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/dev/rel/ejabberd/logs/error.log
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/error.log
|
|
|
|
|
|
|
|
rebar3-elixir:
|
|
|
|
name: Rebar3+Elixir
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-25 21:04:15 +02:00
|
|
|
otp: ['23.0', '25', '26', '27']
|
|
|
|
elixir: ['1.13', '1.15', '1.16', '1.17']
|
2023-12-26 13:37:16 +01:00
|
|
|
exclude:
|
|
|
|
- otp: '23.0'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.15'
|
2023-12-26 13:37:16 +01:00
|
|
|
- otp: '23.0'
|
|
|
|
elixir: '1.16'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '23.0'
|
|
|
|
elixir: '1.17'
|
2023-12-26 13:37:16 +01:00
|
|
|
- otp: '26'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.13'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '27'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.13'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '27'
|
|
|
|
elixir: '1.15'
|
|
|
|
- otp: '27'
|
|
|
|
elixir: '1.16'
|
2023-12-26 13:37:16 +01:00
|
|
|
runs-on: ubuntu-20.04
|
|
|
|
|
|
|
|
steps:
|
|
|
|
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
|
|
|
|
- name: Get specific Erlang/OTP
|
|
|
|
uses: erlef/setup-beam@v1
|
|
|
|
with:
|
|
|
|
otp-version: ${{matrix.otp}}
|
|
|
|
elixir-version: ${{matrix.elixir}}
|
|
|
|
|
2024-02-19 16:04:54 +01:00
|
|
|
- name: Get compatible Rebar binaries
|
|
|
|
if: matrix.otp < 24
|
|
|
|
run: |
|
|
|
|
rm rebar
|
|
|
|
rm rebar3
|
|
|
|
wget https://github.com/processone/ejabberd/raw/21.12/rebar
|
|
|
|
wget https://github.com/processone/ejabberd/raw/21.12/rebar3
|
|
|
|
chmod +x rebar
|
|
|
|
chmod +x rebar3
|
|
|
|
|
2023-12-26 13:37:16 +01:00
|
|
|
- name: Prepare libraries
|
|
|
|
run: |
|
|
|
|
sudo apt-get -qq update
|
|
|
|
sudo apt-get -y purge libgd3 nginx
|
|
|
|
sudo apt-get -qq install libexpat1-dev libgd-dev libpam0g-dev \
|
|
|
|
libsqlite3-dev libwebp-dev libyaml-dev
|
|
|
|
|
|
|
|
- name: Enable ModPresenceDemo and an Elixir dependency
|
|
|
|
run: |
|
|
|
|
sed -i "s|^modules:|modules:\n 'ModPresenceDemo': {}|g" ejabberd.yml.example
|
|
|
|
cat ejabberd.yml.example
|
2024-04-05 12:56:21 +02:00
|
|
|
sed -i 's|^{deps, \[\(.*\)|{deps, [{decimal, ".*", {git, "https://github.com/ericmj/decimal", {branch, "main"}}},\n \1|g' rebar.config
|
2023-12-26 13:37:16 +01:00
|
|
|
cat rebar.config
|
|
|
|
|
|
|
|
- name: Compile
|
|
|
|
run: |
|
|
|
|
./autogen.sh
|
2024-02-19 12:13:50 +01:00
|
|
|
./configure --with-rebar=./rebar3 \
|
2023-12-26 13:37:16 +01:00
|
|
|
--prefix=/tmp/ejabberd \
|
|
|
|
--enable-all \
|
|
|
|
--disable-odbc
|
|
|
|
make
|
|
|
|
|
|
|
|
- run: make xref
|
|
|
|
|
|
|
|
- name: Run rel
|
|
|
|
run: |
|
|
|
|
make rel
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl started
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl register user1 localhost s0mePass
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl registered_users localhost > registered.log
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl stopped
|
|
|
|
|
|
|
|
- name: Run dev
|
|
|
|
run: |
|
|
|
|
make dev
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl started
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl register user2 localhost s0mePass
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl registered_users localhost >> registered.log
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl stopped
|
|
|
|
|
|
|
|
- name: Run install
|
|
|
|
run: |
|
|
|
|
make install
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl start \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl started
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl register user3 localhost s0mePass
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl registered_users localhost >> registered.log
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl stop \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl stopped
|
|
|
|
|
|
|
|
- name: View logs
|
|
|
|
if: always()
|
|
|
|
run: |
|
|
|
|
echo "===> Registered:"
|
|
|
|
cat registered.log
|
|
|
|
echo "===> Prod:"
|
|
|
|
cat _build/prod/rel/ejabberd/logs/*
|
|
|
|
echo "===> Dev:"
|
|
|
|
cat _build/dev/rel/ejabberd/logs/*
|
|
|
|
echo "===> Install:"
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/*
|
|
|
|
|
|
|
|
- name: Check logs
|
|
|
|
if: always()
|
|
|
|
run: |
|
|
|
|
grep -q '^user1$' registered.log
|
|
|
|
grep -q '^user2$' registered.log
|
|
|
|
grep -q '^user3$' registered.log
|
|
|
|
grep -q 'is started' _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'module Presence Demo' _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
test $(find _build/prod/ -empty -name error.log)
|
|
|
|
grep -q 'is started' _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'module Presence Demo' _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
test $(find _build/dev/ -empty -name error.log)
|
|
|
|
grep -q 'is started' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
grep -q 'is stopped' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
grep -q 'module Presence Demo' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
test $(find /tmp/ejabberd/var/log/ejabberd/ -empty -name error.log)
|
|
|
|
|
|
|
|
- name: View logs failures
|
|
|
|
if: failure()
|
|
|
|
run: |
|
|
|
|
cat _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/prod/rel/ejabberd/logs/error.log
|
2023-12-22 15:12:05 +01:00
|
|
|
cat _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/dev/rel/ejabberd/logs/error.log
|
2023-12-22 22:19:25 +01:00
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/error.log
|
2023-12-22 15:12:05 +01:00
|
|
|
|
2021-07-20 12:00:36 +02:00
|
|
|
mix:
|
|
|
|
name: Mix
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-25 21:04:15 +02:00
|
|
|
otp: ['23.0', '25', '26', '27']
|
|
|
|
elixir: ['1.13', '1.15', '1.16', '1.17']
|
2021-07-20 12:00:36 +02:00
|
|
|
exclude:
|
2023-12-26 13:28:51 +01:00
|
|
|
- otp: '23.0'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.15'
|
2023-12-26 13:28:51 +01:00
|
|
|
- otp: '23.0'
|
|
|
|
elixir: '1.16'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '23.0'
|
|
|
|
elixir: '1.17'
|
2023-06-08 23:07:44 +02:00
|
|
|
- otp: '26'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.13'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '27'
|
2024-05-24 12:48:19 +02:00
|
|
|
elixir: '1.13'
|
2024-05-25 21:04:15 +02:00
|
|
|
- otp: '27'
|
|
|
|
elixir: '1.15'
|
|
|
|
- otp: '27'
|
|
|
|
elixir: '1.16'
|
2022-12-13 23:35:14 +01:00
|
|
|
runs-on: ubuntu-20.04
|
2021-07-20 12:00:36 +02:00
|
|
|
|
|
|
|
steps:
|
|
|
|
|
2023-09-11 08:16:03 +02:00
|
|
|
- uses: actions/checkout@v4
|
2021-07-20 12:00:36 +02:00
|
|
|
|
|
|
|
- name: Get specific Erlang/OTP
|
|
|
|
uses: erlef/setup-beam@v1
|
|
|
|
with:
|
|
|
|
otp-version: ${{matrix.otp}}
|
|
|
|
elixir-version: ${{matrix.elixir}}
|
|
|
|
|
|
|
|
- name: Prepare libraries
|
|
|
|
run: |
|
|
|
|
sudo apt-get -qq update
|
2022-07-26 12:28:07 +02:00
|
|
|
sudo apt-get -y purge libgd3 nginx
|
2021-07-20 12:00:36 +02:00
|
|
|
sudo apt-get -qq install libexpat1-dev libgd-dev libpam0g-dev \
|
|
|
|
libsqlite3-dev libwebp-dev libyaml-dev
|
|
|
|
|
|
|
|
- name: Remove Elixir Matchers
|
|
|
|
run: |
|
|
|
|
echo "::remove-matcher owner=elixir-mixCompileWarning::"
|
|
|
|
echo "::remove-matcher owner=elixir-credoOutputDefault::"
|
|
|
|
echo "::remove-matcher owner=elixir-mixCompileError::"
|
|
|
|
echo "::remove-matcher owner=elixir-mixTestFailure::"
|
|
|
|
echo "::remove-matcher owner=elixir-dialyzerOutputDefault::"
|
|
|
|
|
2023-12-26 13:40:24 +01:00
|
|
|
- name: Enable ModPresenceDemo and an Elixir dependency
|
|
|
|
run: |
|
|
|
|
sed -i "s|^modules:|modules:\n 'ModPresenceDemo': {}|g" ejabberd.yml.example
|
|
|
|
cat ejabberd.yml.example
|
|
|
|
sed -i 's|^{deps, \(.*\)|{deps, \1\n {decimal, ".*", {git, "https://github.com/ericmj/decimal", {branch, "main"}}}, |g' rebar.config
|
|
|
|
cat rebar.config
|
|
|
|
|
2024-04-08 10:46:14 +02:00
|
|
|
- name: Unlock Jose dependency on older Erlang
|
|
|
|
if: matrix.otp < 24
|
|
|
|
run: |
|
|
|
|
mix deps.unlock jose
|
|
|
|
|
2021-07-20 12:00:36 +02:00
|
|
|
- name: Compile
|
|
|
|
run: |
|
|
|
|
./autogen.sh
|
|
|
|
./configure --with-rebar=mix \
|
|
|
|
--prefix=/tmp/ejabberd \
|
2024-03-06 12:51:46 +01:00
|
|
|
--enable-all
|
2021-07-20 12:00:36 +02:00
|
|
|
make
|
|
|
|
|
|
|
|
- run: make xref
|
|
|
|
|
2024-03-06 12:51:46 +01:00
|
|
|
- run: make dialyzer
|
|
|
|
|
2024-02-23 12:44:39 +01:00
|
|
|
- run: make edoc
|
|
|
|
|
2021-07-20 12:00:36 +02:00
|
|
|
- name: Run rel
|
|
|
|
run: |
|
|
|
|
make rel
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl started
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl register user1 localhost s0mePass
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl registered_users localhost > registered.log
|
|
|
|
_build/prod/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/prod/rel/ejabberd/bin/ejabberdctl stopped
|
|
|
|
|
|
|
|
- name: Run dev
|
|
|
|
run: |
|
|
|
|
make dev
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl start \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl started
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl register user2 localhost s0mePass
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl registered_users localhost >> registered.log
|
|
|
|
_build/dev/rel/ejabberd/bin/ejabberdctl stop \
|
|
|
|
&& _build/dev/rel/ejabberd/bin/ejabberdctl stopped
|
|
|
|
|
2023-12-22 22:19:25 +01:00
|
|
|
- name: Run install
|
|
|
|
run: |
|
|
|
|
make install
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl start \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl started
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl register user3 localhost s0mePass
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl registered_users localhost >> registered.log
|
|
|
|
/tmp/ejabberd/sbin/ejabberdctl stop \
|
|
|
|
&& /tmp/ejabberd/sbin/ejabberdctl stopped
|
|
|
|
|
2023-12-22 17:44:47 +01:00
|
|
|
- name: View logs
|
|
|
|
if: always()
|
|
|
|
run: |
|
|
|
|
echo "===> Registered:"
|
|
|
|
cat registered.log
|
|
|
|
echo "===> Prod:"
|
|
|
|
cat _build/prod/rel/ejabberd/logs/*
|
|
|
|
echo "===> Dev:"
|
|
|
|
cat _build/dev/rel/ejabberd/logs/*
|
2023-12-22 22:19:25 +01:00
|
|
|
echo "===> Install:"
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/*
|
2023-12-22 17:44:47 +01:00
|
|
|
|
2023-12-22 22:19:25 +01:00
|
|
|
- name: Check logs
|
2021-07-20 12:00:36 +02:00
|
|
|
if: always()
|
|
|
|
run: |
|
|
|
|
grep -q '^user1$' registered.log
|
|
|
|
grep -q '^user2$' registered.log
|
2023-12-22 22:19:25 +01:00
|
|
|
grep -q '^user3$' registered.log
|
2021-07-20 12:00:36 +02:00
|
|
|
grep -q 'is started' _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/prod/rel/ejabberd/logs/ejabberd.log
|
2023-12-26 13:40:24 +01:00
|
|
|
grep -q 'module Presence Demo' _build/prod/rel/ejabberd/logs/ejabberd.log
|
2021-07-20 12:00:36 +02:00
|
|
|
test $(find _build/prod/ -empty -name error.log)
|
|
|
|
grep -q 'is started' _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
grep -q 'is stopped' _build/dev/rel/ejabberd/logs/ejabberd.log
|
2023-12-26 13:40:24 +01:00
|
|
|
grep -q 'module Presence Demo' _build/dev/rel/ejabberd/logs/ejabberd.log
|
2021-07-20 12:00:36 +02:00
|
|
|
test $(find _build/dev/ -empty -name error.log)
|
2023-12-22 22:19:25 +01:00
|
|
|
grep -q 'is started' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
grep -q 'is stopped' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
2023-12-26 13:40:24 +01:00
|
|
|
grep -q 'module Presence Demo' /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
2023-12-22 22:19:25 +01:00
|
|
|
test $(find /tmp/ejabberd/var/log/ejabberd/ -empty -name error.log)
|
2021-07-20 12:00:36 +02:00
|
|
|
|
|
|
|
- name: View logs failures
|
|
|
|
if: failure()
|
|
|
|
run: |
|
|
|
|
cat _build/prod/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/prod/rel/ejabberd/logs/error.log
|
|
|
|
cat _build/dev/rel/ejabberd/logs/ejabberd.log
|
|
|
|
cat _build/dev/rel/ejabberd/logs/error.log
|
2023-12-22 22:19:25 +01:00
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/ejabberd.log
|
|
|
|
cat /tmp/ejabberd/var/log/ejabberd/error.log
|