Skip to content

Commit

Permalink
initial interchain commits, .github workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
hard-nett committed Jun 29, 2023
1 parent e346aee commit f44ecf8
Show file tree
Hide file tree
Showing 24 changed files with 2,174 additions and 64 deletions.
4 changes: 2 additions & 2 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# CODEOWNERS: https://help.github.com/articles/about-codeowners/

# Primary repo maintainers
* @ethanfrey
* @alpe
* @terpnetwork
* @discoverdefiteam
30 changes: 30 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
name: Report a bug
about: Issue tracker is used for reporting bugs
title: ''
labels: 'type:bug'
assignees: ''
---

#### Specifications

Terp-Core version: `Terpd version`
OS & Version: Windows/Linux/OSX
Commit hash:

#### Expected behavior


#### Actual behavior


#### Steps to reproduce the behavior


#### Backtrace

````
[backtrace]
````

When submitting logs: please submit them as text and not screenshots.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: true
31 changes: 31 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<!-- < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ☺
v ✰ Thanks for opening an issue! ✰
v Before smashing the submit button please review the template.
v Word of caution: poorly thought-out proposals may be rejected
v without deliberation
☺ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -->

# Summary

<!-- Short, concise description of the proposed feature -->

## Problem Definition

<!-- Why do we need this feature?
What problems may be addressed by introducing this feature?
What benefits does Terp Network stand to gain by including this feature?
Are there any disadvantages to including this feature? -->

## Proposal

<!-- Detailed description of requirements of implementation -->

____

### For Admin Use

- [ ] Not duplicate issue
- [ ] Appropriate labels applied
- [ ] Appropriate contributors tagged
- [ ] Contributor-assigned/self-assigned
- [ ] Is a spike necessary to map out how the issue should be approached?
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/issue.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
name: General issue
about: A template for general issues with acceptance criteria
title: ''
assignees: ''
---
<!-- < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ☺
v ✰ Thanks for creating an issue! ✰
☺ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -->

## Background

> This is where you can provide code examples or context (e.g. past PR's)
> e.g.
> - The following PRs contributed to...
## Suggested Design

> Here, you can put concrete steps as to what to do next
> e.g.
> - create test file in...
## Acceptance Criteria

> Goals & criteria for success
> e.g.
> - all existing and new tests should pass
61 changes: 0 additions & 61 deletions .github/workflows/codacy.yml

This file was deleted.

9 changes: 8 additions & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@
name: Build Docker Image on PR

on:
pull_request:
push:
branches:
- master
- main

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:
docker:
Expand Down
206 changes: 206 additions & 0 deletions .github/workflows/interchaintest-E2E.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
name: ictest E2E

on:
push:
tags:
- '**'
branches:
- '**'
paths:
- '**.yml'
- '**.go'
- '**.mod'
- '**.sum'

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}-e2e
GO_VERSION: 1.20.0

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build-and-push-image:
runs-on: ubuntu-latest
outputs:
branchTag: ${{ steps.meta.outputs.version }}
permissions:
contents: read
packages: write

steps:
- name: Checkout repository
uses: actions/checkout@v3

# We setup go & cache dependencies here. This way each child job
# does not have to reinstall all dependencies individually.
# Should ID be unique to this job only?
- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- name: Download dependencies
run: |
go mod download
cd interchaintest && go mod download
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v4
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build and push Docker image
id: push
uses: docker/build-push-action@v4
with:
context: .
platforms: linux/amd64
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max

# make terp-core:branchname here for all needs.build-and-push-image.outputs.branchTag
# then upload to github. Then download for each as a cache. This way its only built once

# TODO: Add reusable job template here, just changing the `make` command for each

test-terp-basic:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-basic
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}

test-terp-ibc:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- name: checkout chain
uses: actions/checkout@v2

- run: make ictest-ibc
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}

test-terp-upgrade:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-upgrade
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}

test-terp-ibchooks:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-ibchooks
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}


# === UNITY CONTRACT ===
test-terp-unity-deploy:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-unity-deploy
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}

test-terp-unity-gov:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-unity-gov
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}

test-terp-pfm:
runs-on: ubuntu-latest
needs: build-and-push-image
steps:
- name: checkout chain
uses: actions/checkout@v2

- name: Setup Golang with cache
uses: magnetikonline/action-golang-cache@v4
with:
go-version: ${{ env.GO_VERSION }}
id: go

- run: make ictest-pfm
env:
BRANCH_CI: ${{needs.build-and-push-image.outputs.branchTag}}
Loading

0 comments on commit f44ecf8

Please sign in to comment.