diff --git a/.github/workflows/smoke_test.yml b/.github/workflows/smoke_test.yml new file mode 100644 index 00000000..46d73071 --- /dev/null +++ b/.github/workflows/smoke_test.yml @@ -0,0 +1,38 @@ +name: Smoke Test + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + build-and-smoke-test: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Build Docker image + run: docker build -t phoenix-app . + + - name: Run Docker container + run: | + docker run -d --name phoenix-container -p 3000:80 phoenix-app + sleep 10 # Give some time for the container to start + + - name: Smoke test + run: | + # Example smoke test using curl + curl --fail http://localhost:3000/ || (docker logs phoenix-container && exit 1) + + - name: Cleanup + run: | + docker stop phoenix-container + docker rm phoenix-container