name: telemetrygen on: push: branches: [ main ] tags: - 'v[0-9]+.[0-9]+.[0-9]+*' pull_request: # Do not cancel this workflow on main. See https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/16616 concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: build-dev: runs-on: ubuntu-latest if: ${{ github.actor != 'dependabot[bot]' }} steps: - uses: actions/checkout@v3 - name: Build telemetrygen uses: docker/build-push-action@v4 with: context: cmd/telemetrygen push: false tags: ghcr.io/open-telemetry/opentelemetry-collector-contrib/telemetrygen:dev publish-latest: runs-on: ubuntu-latest if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v')) && github.repository == 'open-telemetry/opentelemetry-collector-contrib' permissions: packages: write steps: - uses: actions/checkout@v3 - name: Login to GitHub Container Registry uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Push telemetrygen to Github packages uses: docker/build-push-action@v4 with: context: cmd/telemetrygen push: true tags: ghcr.io/open-telemetry/opentelemetry-collector-contrib/telemetrygen:latest publish-stable: runs-on: ubuntu-latest if: startsWith(github.ref, 'refs/tags/v') && github.repository == 'open-telemetry/opentelemetry-collector-contrib' permissions: packages: write steps: - uses: actions/checkout@v3 - name: Set Release Tag id: github_tag run: ./.github/workflows/scripts/set_release_tag.sh - name: Login to GitHub Container Registry uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Push telemetrygen to Github packages run: | docker build cmd/telemetrygen -t ghcr.io/open-telemetry/opentelemetry-collector-contrib/telemetrygen:$RELEASE_TAG docker push ghcr.io/open-telemetry/opentelemetry-collector-contrib/telemetrygen:$RELEASE_TAG env: RELEASE_TAG: ${{ steps.github_tag.outputs.tag }}