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: runs-on: ubuntu-latest strategy: matrix: node-version: [20.16.0] steps: - uses: actions/checkout@v4 with: submodules: true - name: Install pnpm uses: pnpm/action-setup@v4 - name: Install FFmpeg uses: FedericoCarboni/setup-ffmpeg@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4.0.3 with: node-version: ${{ matrix.node-version }} cache: 'pnpm' - name: Build Misskey run: | corepack enable && corepack prepare 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 # https://github.com/docker/compose/issues/1294#issuecomment-374847206 run: | cd packages/backend/test-federation docker compose up -d --scale tester=0 - name: Test run: | cd packages/backend/test-federation docker compose run --no-deps tester - name: Stop servers run: | cd packages/backend/test-federation docker compose down