-
Notifications
You must be signed in to change notification settings - Fork 286
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(iroha2-ledger): add Iroha V2 test ledger image and setup class
- Add a new test image for Iroha V2 (iroha2-all-in-one). It start a test ledger in single container, and also contains a proxy script for running iroha_client_cli. - Add the new image to the CI. - Add a new class for starting and interacting with Iroha V2 test ledger from typescript test - Iroha2TestLedger. - Add test for test setup class to ensure basic functions are working correctly. Relates to #2138 Signed-off-by: Michal Bajer <[email protected]>
- Loading branch information
Showing
16 changed files
with
1,067 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
name: iroha2-all-in-one-publish | ||
|
||
on: | ||
push: | ||
# Publish `main` as Docker `latest` image. | ||
branches: | ||
- main | ||
|
||
# Publish `v1.2.3` tags as releases. | ||
tags: | ||
- v* | ||
|
||
env: | ||
IMAGE_NAME: cactus-iroha2-all-in-one | ||
|
||
jobs: | ||
# Push image to GitHub Packages. | ||
# See also https://docs.docker.com/docker-hub/builds/ | ||
build-tag-push-container: | ||
runs-on: ubuntu-20.04 | ||
env: | ||
DOCKER_BUILDKIT: 1 | ||
DOCKERFILE_PATH: ./tools/docker/iroha2-all-in-one/Dockerfile | ||
DOCKER_BUILD_DIR: ./tools/docker/iroha2-all-in-one/ | ||
permissions: | ||
packages: write | ||
contents: read | ||
|
||
steps: | ||
- uses: actions/[email protected] | ||
|
||
- name: Build image | ||
run: docker build $DOCKER_BUILD_DIR --file $DOCKERFILE_PATH --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" | ||
|
||
- name: Log in to registry | ||
# This is where you will update the PAT to GITHUB_TOKEN | ||
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin | ||
|
||
- name: Push image | ||
run: | | ||
SHORTHASH=$(git rev-parse --short "$GITHUB_SHA") | ||
TODAYS_DATE="$(date +%F)" | ||
DOCKER_TAG="$TODAYS_DATE-$SHORTHASH" | ||
IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME | ||
# Change all uppercase to lowercase | ||
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') | ||
# Strip git ref prefix from version | ||
VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') | ||
# Strip "v" prefix from tag name | ||
[[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') | ||
# Do not use the `latest` tag at all, tag with date + git short hash if there is no git tag | ||
[ "$VERSION" == "main" ] && VERSION=$DOCKER_TAG | ||
echo IMAGE_ID=$IMAGE_ID | ||
echo VERSION=$VERSION | ||
docker tag $IMAGE_NAME $IMAGE_ID:$VERSION | ||
docker push $IMAGE_ID:$VERSION |
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
Oops, something went wrong.