Bump sass from 1.78.0 to 1.79.1 #3849
Workflow file for this run
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
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
# ** Build ** | |
# | |
# Catroweb does not require any build actions such as a compilation process since it is interpreted. | |
# However, Catroweb has various dependencies on third party software to run. (E.g. web server, database, ..) | |
# To ease the setup process we use Docker. This workflow checks that all Docker containers build and their basic | |
# functionality is working. | |
# | |
# - This tests must never fail!: | |
# | |
# We should never allow those checks to fail before merging a pull request. Having a failing docker container | |
# prevents developers from effectively working with Docker. At all times developers should have easy access to | |
# the development | |
# | |
# | |
name: 'Docker Container tests' | |
# Run-on every creation, update and merge of a pull request. | |
# However, prevent checks to be initiated twice if the pull request origins from a branch on the official repository. | |
# For example, this happens with dependabot. | |
on: | |
pull_request: | |
branches: | |
- '**' # all branches | |
- '!master' # excludes master to prevent double test runs during release prep. | |
jobs: | |
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
# Developer Container: | |
# | |
# - The Docker test container is already thoroughly tested during dynamic software tests. | |
# However, it is essential to guarantee the functionality of the development container too. | |
# | |
# -- the container must build, | |
# -- the container must be filled with dummy data | |
# -- the website must be available (check status code of response) | |
# -- the test system must be working (run a few tests) | |
# -- the shared volumes must work (invalid modification must crash the application) | |
# | |
dev_container_checks: | |
name: Development Container | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Build and start all containers (Docker Compose) | |
run: | | |
cd docker | |
docker compose -f docker-compose.dev.yaml up -d | |
sleep 30 | |
- name: Check Symfony application (info) | |
run: | | |
docker exec app.catroweb bin/console about | |
- name: Create a livid environment with dummy data | |
run: | | |
docker exec app.catroweb bin/console catrobat:reset --hard | |
- name: Run a few dynamic software tests | |
run: | | |
docker exec app.catroweb bin/behat -s web-general tests/BehatFeatures/web/general/homepage.feature | |
- name: Test shared volumes, by expecting a crash with invalid changes to the test file | |
id: shared-test-run-must-fail | |
continue-on-error: true | |
run: | | |
echo "INVALID" > tests/BehatFeatures/web/general/homepage.feature | |
docker exec app.catroweb bin/behat -s web-general tests/BehatFeatures/web/general/homepage.feature | |
TEST_RUN_EXIT_CODE=$? | |
echo "test-run-exit-code=$TEST_RUN_EXIT_CODE" > $GITHUB_ENV | |
( exit $TEST_RUN_EXIT_CODE ) | |
- name: Assert shared volumes are working as expected | |
if: env.shared-test-run-must-fail.test-run-exit-code != '0' | |
run: | | |
exit -1 | |
- name: Test response of the website running in the container | |
run: | | |
sudo apt-get update | |
sudo apt-get install apache2 wget | |
sudo sh -c "echo '\n127.0.0.1 catroweb' >> /etc/hosts" | |
wget --spider -S "http://catroweb:8080" 2>&1 | awk '/HTTP\// {print $2}' | grep 200 | |
- name: DEBUG | |
if: failure() | |
run: | | |
docker ps -a | |
echo "--- App ---" | |
docker logs app.catroweb | |
echo "--- DB ---" | |
docker logs db.catroweb.test | |
echo "--- Chrome ---" | |
docker logs chrome.catroweb | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: screenshots_dev_container | |
path: tests/TestReports/TestScreenshots | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: dev_logs_dev_container | |
path: var/log/dev | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: test_logs_dev_container | |
path: var/log/test |