Release: 2025.3.2 #1558
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test (federation) | |
on: | |
push: | |
branches: | |
- master | |
- develop | |
paths: | |
- packages/backend/** | |
- packages/misskey-js/** | |
- .github/workflows/test-federation.yml | |
pull_request: | |
paths: | |
- packages/backend/** | |
- packages/misskey-js/** | |
- .github/workflows/test-federation.yml | |
jobs: | |
test: | |
name: Federation test | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [22.11.0] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup pnpm | |
uses: pnpm/[email protected] | |
- name: Install FFmpeg | |
run: | | |
for i in {1..3}; do | |
echo "Attempt $i: Installing FFmpeg..." | |
curl -s -L https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz -o ffmpeg.tar.xz && \ | |
tar -xf ffmpeg.tar.xz && \ | |
mv ffmpeg-*-static/ffmpeg /usr/local/bin/ && \ | |
mv ffmpeg-*-static/ffprobe /usr/local/bin/ && \ | |
rm -rf ffmpeg.tar.xz ffmpeg-*-static/ && \ | |
break || sleep 10 | |
if [ $i -eq 3 ]; then | |
echo "Failed to install FFmpeg after 3 attempts" | |
exit 1 | |
fi | |
done | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/[email protected] | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'pnpm' | |
- name: Build Misskey | |
run: | | |
pnpm i --frozen-lockfile | |
pnpm build | |
- name: Setup | |
run: | | |
cd packages/backend/test-federation | |
bash ./setup.sh | |
sudo chmod 644 ./certificates/*.test.key | |
- name: Start servers | |
id: start_servers | |
continue-on-error: true | |
# https://github.com/docker/compose/issues/1294#issuecomment-374847206 | |
run: | | |
cd packages/backend/test-federation | |
docker compose up -d --scale tester=0 | |
- name: Print start_servers error | |
if: ${{ steps.start_servers.outcome == 'failure' }} | |
run: | | |
cd packages/backend/test-federation | |
docker compose logs | tail -n 300 | |
exit 1 | |
- name: Test | |
id: test | |
continue-on-error: true | |
run: | | |
cd packages/backend/test-federation | |
docker compose run --no-deps tester | |
- name: Log | |
if: ${{ steps.test.outcome == 'failure' }} | |
run: | | |
cd packages/backend/test-federation | |
docker compose logs | |
exit 1 | |
- name: Stop servers | |
run: | | |
cd packages/backend/test-federation | |
docker compose down |