diff --git a/.github/workflows/rest-sample.yaml b/.github/workflows/rest-sample.yaml index df6319fd..8bd90668 100644 --- a/.github/workflows/rest-sample.yaml +++ b/.github/workflows/rest-sample.yaml @@ -6,8 +6,6 @@ run-name: ${{ github.actor }} is testing the REST Sample env: NODE_VER: 16.x -# IMAGE_NAME: ghcr.io/hyperledger/fabric-rest-sample - IMAGE_NAME: ghcr.io/hyperledger/fabric-samples/asset-transfer-basic/rest-api-typescript on: workflow_dispatch: @@ -43,45 +41,3 @@ jobs: - name: Test REST Sample Application run: npm test working-directory: asset-transfer-basic/rest-api-typescript - - docker-image: - runs-on: ubuntu-20.04 - steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Docker meta - id: meta - uses: docker/metadata-action@v4 - with: - images: | - ${{ env.IMAGE_NAME }} - # todo: where shall we describe the revision of the sample component(s)? -# tags: | -# type=semver,pattern={{version}} -# type=semver,pattern={{major}} -# type=semver,pattern={{major}}.{{minor}} - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - name: Login to GitHub Container Registry - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push - id: push - uses: docker/build-push-action@v3 - with: - context: asset-transfer-basic/rest-api-typescript - #platforms: linux/amd64,linux/arm64 - platforms: linux/amd64 - # todo: this is not right as it may try to publish on any push event - # push: ${{ github.event_name != 'pull_request' }} - - # todo: temp hack - push: ${{ github.event_name == 'pull_request' }} - - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} \ No newline at end of file diff --git a/ci/azure-pipelines.yml b/ci/azure-pipelines.yml new file mode 100644 index 00000000..c486d325 --- /dev/null +++ b/ci/azure-pipelines.yml @@ -0,0 +1,31 @@ +# +# SPDX-License-Identifier: Apache-2.0 +# + +trigger: + - main + - release-1.4 + - release-2.2 + +variables: + - name: FABRIC_VERSION + value: 2.4 + - name: GOPATH + value: $(Build.Repository.LocalPath) + - name: GO_BIN + value: $(GOPATH)/bin + - name: GO_VER + value: 1.18.3 + - name: NODE_VER + value: 16.x + - name: PATH + value: $(GOPATH)/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin + - group: credentials + +jobs: + - job: REST_Sample + displayName: REST Server Sample + pool: + vmImage: ubuntu-20.04 + steps: + - template: templates/asset-transfer-basic/azure-pipelines-rest.yml diff --git a/ci/templates/asset-transfer-basic/azure-pipelines-rest.yml b/ci/templates/asset-transfer-basic/azure-pipelines-rest.yml index 1d5d3fc3..1fb3933c 100644 --- a/ci/templates/asset-transfer-basic/azure-pipelines-rest.yml +++ b/ci/templates/asset-transfer-basic/azure-pipelines-rest.yml @@ -3,13 +3,23 @@ # steps: - - + - task: NodeTool@0 + inputs: + versionSpec: $(NODE_VER) + displayName: Install Node.js + - script: npm install + workingDirectory: asset-transfer-basic/rest-api-typescript + displayName: Install REST Sample Dependencies + - script: npm run build + workingDirectory: asset-transfer-basic/rest-api-typescript + displayName: Build REST Sample Application + - script: npm test + workingDirectory: asset-transfer-basic/rest-api-typescript + displayName: Test REST Sample Application - script: | docker build -t ghcr.io/hyperledger/fabric-rest-sample . workingDirectory: asset-transfer-basic/rest-api-typescript displayName: Build REST Sample Docker Image - - script: | echo ${GITHUB_PAT} | docker login ghcr.io -u ${GITHUB_USER} --password-stdin docker push ghcr.io/hyperledger/fabric-rest-sample:latest @@ -18,4 +28,4 @@ steps: displayName: Publish REST Sample Docker Image env: GITHUB_USER: $(GITHUB_USER) - GITHUB_PAT: $(GITHUB_PAT) + GITHUB_PAT: $(GITHUB_PAT) \ No newline at end of file