|
78 | 78 | working-directory: compose |
79 | 79 | run: docker compose -f ${{ matrix.compose-file }} -f docker-compose-validate.yml down -v |
80 | 80 |
|
| 81 | + compose-dev-test: |
| 82 | + name: Test docker-compose-dev.yml |
| 83 | + needs: lint-actions |
| 84 | + runs-on: ubuntu-latest |
| 85 | + timeout-minutes: 10 |
| 86 | + steps: |
| 87 | + - uses: actions/checkout@v6 |
| 88 | + |
| 89 | + - name: Start dev compose stack |
| 90 | + working-directory: compose |
| 91 | + run: docker compose -f docker-compose-dev.yml up -d |
| 92 | + |
| 93 | + - name: Wait for Temporal to be ready |
| 94 | + working-directory: compose |
| 95 | + run: | |
| 96 | + for i in $(seq 1 30); do |
| 97 | + if docker compose -f docker-compose-dev.yml exec temporal temporal operator cluster health 2>/dev/null; then |
| 98 | + echo "Temporal is ready" |
| 99 | + exit 0 |
| 100 | + fi |
| 101 | + echo "Waiting for Temporal... ($i/30)" |
| 102 | + sleep 2 |
| 103 | + done |
| 104 | + echo "Temporal failed to become ready" |
| 105 | + exit 1 |
| 106 | +
|
| 107 | + - name: Validate Temporal is functional |
| 108 | + working-directory: compose |
| 109 | + run: | |
| 110 | + docker compose -f docker-compose-dev.yml exec temporal temporal operator namespace describe default |
| 111 | + docker compose -f docker-compose-dev.yml exec temporal temporal workflow start \ |
| 112 | + --workflow-id validation-test \ |
| 113 | + --type NonExistentWorkflow \ |
| 114 | + --task-queue validation-queue \ |
| 115 | + --execution-timeout 10s |
| 116 | + docker compose -f docker-compose-dev.yml exec temporal temporal workflow terminate \ |
| 117 | + --workflow-id validation-test \ |
| 118 | + --reason "Validation complete" || true |
| 119 | +
|
| 120 | + - name: Print all logs on failure |
| 121 | + if: failure() |
| 122 | + working-directory: compose |
| 123 | + run: | |
| 124 | + echo "=== Printing all container logs ===" |
| 125 | + docker compose -f docker-compose-dev.yml ps -a |
| 126 | + docker compose -f docker-compose-dev.yml logs |
| 127 | +
|
| 128 | + - name: Cleanup |
| 129 | + if: always() |
| 130 | + working-directory: compose |
| 131 | + run: docker compose -f docker-compose-dev.yml down -v |
| 132 | + |
81 | 133 | compose-tls-test: |
82 | 134 | name: Test docker-compose-tls.yml |
83 | 135 | needs: lint-actions |
|
0 commit comments