Js placo #1232
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
name: Test Integration | |
on: | |
push: | |
branches: [master] | |
paths-ignore: | |
- "**.md" | |
pull_request: | |
branches: [master] | |
paths-ignore: | |
- "**.md" | |
env: | |
COMPOSE_DOCKER_CLI_BUILD: 1 | |
DOCKER_BUILDKIT: 1 | |
jobs: | |
test_integration: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
steps: | |
- name: Maximize build space | |
run: | | |
sudo rm -rf /usr/local/lib/android | |
sudo rm -rf /usr/share/dotnet | |
sudo rm -rf /opt/ghc | |
sudo apt remove -y azure-cli google-cloud-sdk microsoft-edge-stable dotnet-sdk-* temurin-* google-chrome-stable firefox hhvm llvm-* powershell mysql-* mongodb-mongosh | |
df -h | |
- uses: actions/checkout@v4 | |
with: | |
lfs: true | |
submodules: recursive | |
# Ensure that the filesystem permissions are consistent across all umasks, all git checkouts: | |
- name: Set filesystems permissions | |
run: | | |
chmod -R g+w . | |
- name: Docker Login | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_TOKEN }} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Build robot | |
run: | | |
docker system prune -af | |
docker buildx build --cache-from utrarobosoccer/soccerbot:no_cuda --build-arg INSTALL_CUDA=false --tag utrarobosoccer/soccerbot --load . | |
docker builder prune -a | |
docker image ls | |
- name: Build webots | |
run: | | |
docker compose build simulator | |
docker builder prune -a | |
docker image ls | |
- name: Walking Integration Test | |
timeout-minutes: 10 | |
run: | | |
docker compose -f docker-compose.test.yaml up --no-build --exit-code-from friendly | |
- name: Get integration test logs | |
if: always() | |
run: | | |
docker compose logs | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/textures/ soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/bouncing_log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.html soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.json soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.x3d soccerbot/bags || echo "Unable to find logs" | |
- name: Get rosbag | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: RosbagsWalking | |
path: soccerbot/bags | |
- name: Kick Integration Test | |
timeout-minutes: 10 | |
run: | | |
docker compose -f docker-compose.test.kick.yaml up --exit-code-from friendly | |
- name: Get integration test logs | |
if: always() | |
run: | | |
docker compose logs | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/textures/ soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/bouncing_log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.html soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.json soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.x3d soccerbot/bags || echo "Unable to find logs" | |
- name: Get rosbag | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: RosbagsKick | |
path: soccerbot/bags | |
- name: Kick and Walk Integration Test | |
timeout-minutes: 15 | |
env: | |
ROBOT_X: 3.5 | |
TEST_NAME: test_walk_and_kick_right | |
run: | | |
docker compose -f docker-compose.test.kick.yaml up --exit-code-from friendly | |
- name: Get integration test logs | |
if: always() | |
run: | | |
docker compose logs | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/textures/ soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/bouncing_log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/log.txt soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.html soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.json soccerbot/bags || echo "Unable to find logs" | |
docker cp soccerbot_simulator_1:/usr/local/webots/projects/samples/contests/robocup/controllers/referee/recording.x3d soccerbot/bags || echo "Unable to find logs" | |
- name: Get rosbag | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: RosbagsWalkAndKick | |
path: soccerbot/bags | |
- name: Setup tmate session | |
timeout-minutes: 15 | |
if: ${{ failure() }} | |
uses: mxschmitt/action-tmate@v3 |