Skip to content

fix: allow the extensions to authenticate #247

fix: allow the extensions to authenticate

fix: allow the extensions to authenticate #247

#
# Copyright (c) 2023-2024 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
#
name: Pull Request Check
# Trigger the workflow on pull request
on: [pull_request]
jobs:
build:
name: build
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
dist: [ 'musl', 'libc-ubi8', 'libc-ubi9' ]
arch: ['amd64']
steps:
- name: Checkout che-code source code
uses: actions/checkout@v3
- name: Compile che-code
run: |
docker buildx build \
--platform linux/${{matrix.arch}} \
--progress=plain \
-f build/dockerfiles/linux-${{matrix.dist}}.Dockerfile \
-t linux-${{matrix.dist}}-${{matrix.arch}} .
- name: Upload image
uses: ishworkh/docker-image-artifact-upload@v1
with:
image: "linux-${{matrix.dist}}-${{matrix.arch}}"
assemble:
name: assemble
runs-on: ubuntu-22.04
needs: build
steps:
- name: Checkout che-code source code
uses: actions/checkout@v3
- name: Cleanup docker images
run: |
docker system prune -af
- name: Download linux-libc-ubi8-amd64 image
uses: ishworkh/docker-image-artifact-download@v1
with:
image: "linux-libc-ubi8-amd64"
- name: Download linux-libc-ubi9-amd64 image
uses: ishworkh/docker-image-artifact-download@v1
with:
image: "linux-libc-ubi9-amd64"
- name: Download linux-musl-amd64 image
uses: ishworkh/docker-image-artifact-download@v1
with:
image: "linux-musl-amd64"
- name: Login to Quay.io
uses: docker/login-action@v2
with:
registry: quay.io
username: ${{ secrets.QUAY_PULL_REQUESTS_USERNAME }}
password: ${{ secrets.QUAY_PULL_REQUESTS_PASSWORD }}
- name: Display docker images
run: |
docker images
- name: Assemble che-code
run: |
PR_NUMBER="${{ github.event.number }}"
echo "Pull request $PR_NUMBER"
IMAGE_NAME="quay.io/che-incubator-pull-requests/che-code:pr-$PR_NUMBER-amd64"
echo "_IMAGE_NAME=${IMAGE_NAME}" >> $GITHUB_ENV
docker buildx build \
--platform linux/amd64 \
--progress=plain \
--push \
-f build/dockerfiles/assembly.Dockerfile \
-t ${IMAGE_NAME} .
- name: Display docker images (final)
run: |
docker images
- name: 'Comment PR'
uses: actions/github-script@v6
with:
script: |
const { repo: { owner, repo } } = context;
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `Pull Request Che-Code image published:\n👉 [${process.env._IMAGE_NAME}](https://${process.env._IMAGE_NAME})`
})
dev:
name: dev
runs-on: ubuntu-22.04
steps:
- name: Checkout che-code source code
uses: actions/checkout@v2
- name: Login to Quay.io
uses: docker/login-action@v2
with:
registry: quay.io
username: ${{ secrets.QUAY_PULL_REQUESTS_USERNAME }}
password: ${{ secrets.QUAY_PULL_REQUESTS_PASSWORD }}
- name: Build Che-Code Docker image
run: |
PR_NUMBER="${{ github.event.number }}"
echo "Pull request $PR_NUMBER"
DEV_IMAGE_NAME="quay.io/che-incubator-pull-requests/che-code-dev:pr-$PR_NUMBER-dev-amd64"
echo "Dev image $DEV_IMAGE_NAME"
echo "_DEV_IMAGE_NAME=${DEV_IMAGE_NAME}" >> $GITHUB_ENV
docker buildx build \
--platform linux/amd64 \
--progress=plain \
--push \
-f build/dockerfiles/dev.Dockerfile \
-t ${DEV_IMAGE_NAME} .
- name: Display docker images
run: |
docker images
- name: 'Comment PR'
uses: actions/github-script@v6
with:
script: |
const { repo: { owner, repo } } = context;
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `Pull Request Dev image published:\n👉 [${process.env._DEV_IMAGE_NAME}](https://${process.env._DEV_IMAGE_NAME})`
})