Skip to content
This repository was archived by the owner on Jan 24, 2025. It is now read-only.

Commit 57a14a4

Browse files
authored
Merge pull request #663 from iotaledger/feat/add-docker-test-framework-workflow
Add CI workflow for nightly docker network tests
2 parents c6f349d + fd96547 commit 57a14a4

12 files changed

+91
-24
lines changed

.github/workflows/build_docker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: self-hosted
1212
steps:
1313
- name: Check out code into the Go module directory
14-
uses: actions/checkout@v3
14+
uses: actions/checkout@v4
1515

1616
- name: Build Docker image
1717
run: DOCKER_BUILDKIT=1 docker build . --file Dockerfile --tag iota-core:latest

.github/workflows/build_tools.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ on:
44
pull_request:
55
paths:
66
- 'tools/genesis-snapshot/**'
7-
jobs:
87

8+
jobs:
99
build:
1010
name: Import Check
1111
runs-on: self-hosted
1212
steps:
1313

1414
- name: Checkout repository
15-
uses: actions/checkout@v3
15+
uses: actions/checkout@v4
1616

17-
- uses: actions/setup-go@v4
17+
- uses: actions/setup-go@v5
1818
with:
1919
go-version-file: 'go.mod'
2020
cache: false

.github/workflows/codeql_analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222

2323
steps:
2424
- name: Checkout repository
25-
uses: actions/checkout@v3
25+
uses: actions/checkout@v4
2626
with:
2727
ref: develop
2828

.github/workflows/docker-network-health.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Run Docker Network and Check Health
1+
name: Docker Network Health Check
22

33
on:
44
workflow_dispatch:
@@ -20,7 +20,7 @@ jobs:
2020

2121
steps:
2222
- name: Checkout code
23-
uses: actions/checkout@v2
23+
uses: actions/checkout@v4
2424

2525
- name: Run network, wait and check health
2626
run: |
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Docker Network Tests
2+
3+
on:
4+
schedule:
5+
- cron: '0 1 * * *' # Runs every day at 1 AM
6+
workflow_dispatch:
7+
inputs:
8+
testCases:
9+
description: 'Custom test cases to run:'
10+
required: false
11+
default: ""
12+
13+
jobs:
14+
test:
15+
runs-on: self-hosted
16+
17+
steps:
18+
- name: Check out code
19+
uses: actions/checkout@v4
20+
21+
- name: Set up Docker
22+
uses: docker/setup-buildx-action@v3
23+
24+
- name: Set up Go
25+
uses: actions/setup-go@v5
26+
with:
27+
go-version-file: 'go.mod'
28+
cache: false
29+
30+
- name: Run all tests
31+
run: |
32+
cd tools/docker-network/tests &&
33+
./run_tests.sh ${{ github.event.inputs.testCases }}

.github/workflows/feature-network-deploy.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ jobs:
2222
DOCKER_BUILDKIT: 1
2323
steps:
2424
- name: Checkout repository
25-
uses: actions/checkout@v3
25+
uses: actions/checkout@v4
2626

2727
- name: Set up Docker Buildx
28-
uses: docker/setup-buildx-action@v2
28+
uses: docker/setup-buildx-action@v3
2929

3030
- name: Cache Docker layers
3131
uses: actions/cache@v3
@@ -36,21 +36,21 @@ jobs:
3636
${{ runner.os }}-buildx-
3737
3838
- name: Login to DockerHub
39-
uses: docker/login-action@v2
39+
uses: docker/login-action@v3
4040
with:
4141
username: '${{ secrets.IOTALEDGER_DOCKER_USERNAME }}'
4242
password: '${{ secrets.IOTALEDGER_DOCKER_PASSWORD }}'
4343

4444
- name: Publish to Docker Hub
45-
uses: docker/build-push-action@v3
45+
uses: docker/build-push-action@v5
4646
with:
4747
tags: iotaledger/iota-core:feature
4848
push: true
4949
build-args: |
5050
cache-from: type=local,src=/tmp/.buildx-cache
5151
cache-to: type=local,mode=max,dest=/tmp/.buildx-cache-new
5252

53-
- uses: actions/setup-go@v4
53+
- uses: actions/setup-go@v5
5454
with:
5555
go-version-file: 'tools/genesis-snapshot/go.mod'
5656
cache: false

.github/workflows/gendoc.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ jobs:
1010
runs-on: self-hosted
1111
steps:
1212
- name: Checkout repository
13-
uses: actions/checkout@v3
13+
uses: actions/checkout@v4
1414

1515
- name: Set up Go
16-
uses: actions/setup-go@v4
16+
uses: actions/setup-go@v5
1717
with:
1818
go-version-file: 'tools/gendoc/go.mod'
1919
cache: false
@@ -26,7 +26,7 @@ jobs:
2626
run: go mod tidy && go run main.go
2727

2828
- name: Create Pull Request
29-
uses: peter-evans/create-pull-request@v4
29+
uses: peter-evans/create-pull-request@v5
3030
with:
3131
token: ${{ secrets.GITHUB_TOKEN }}
3232
title: "chore(gendoc): update docs"

.github/workflows/golangci-lint.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,23 @@ on:
66
- 'documentation/**'
77
- 'scripts/**'
88
- 'tools/**'
9+
910
jobs:
1011
golangci-lint:
1112
name: GolangCI-Lint
1213
runs-on: self-hosted
1314
steps:
1415
- name: Check out code into the Go module directory
15-
uses: actions/checkout@v3
16+
uses: actions/checkout@v4
1617

1718
- name: Checkout custom linter
18-
uses: actions/checkout@v3
19+
uses: actions/checkout@v4
1920
with:
2021
repository: karimodm/typegroupingcheck
2122
path: typegroupingcheck
2223

2324
- name: Setup go
24-
uses: actions/setup-go@v4
25+
uses: actions/setup-go@v5
2526
with:
2627
go-version-file: './typegroupingcheck/go.mod'
2728

.github/workflows/unit-test.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ jobs:
1111
runs-on: self-hosted
1212
steps:
1313
- name: Checkout repository
14-
uses: actions/checkout@v3
14+
uses: actions/checkout@v4
1515

16-
- uses: actions/setup-go@v4
16+
- uses: actions/setup-go@v5
1717
with:
1818
go-version-file: 'go.mod'
1919
cache: false
@@ -24,15 +24,14 @@ jobs:
2424
- name: Run Tests
2525
run: go test ./... -tags rocksdb -count=1 -timeout 20m
2626

27-
2827
unit-tests-race:
2928
name: Unit tests -race
3029
runs-on: self-hosted
3130
steps:
3231
- name: Checkout repository
33-
uses: actions/checkout@v3
32+
uses: actions/checkout@v4
3433

35-
- uses: actions/setup-go@v4
34+
- uses: actions/setup-go@v5
3635
with:
3736
go-version-file: 'go.mod'
3837
cache: false

README.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# IOTA-Core - The IOTA 2.0 node
2+
3+
IOTA-Core is the node software for the upcoming IOTA 2.0 protocol.
4+
5+
---
6+
![GitHub Release (latest by date)](https://img.shields.io/github/v/release/iotaledger/iota-core)
7+
![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/iotaledger/iota-core)
8+
![GitHub License](https://img.shields.io/github/license/iotaledger/iota-core)
9+
---
10+
[![build_docker](https://github.com/iotaledger/iota-core/actions/workflows/build_docker.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/build_docker.yml)
11+
[![build_tools](https://github.com/iotaledger/iota-core/actions/workflows/build_tools.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/build_tools.yml)
12+
[![docker-network-health](https://github.com/iotaledger/iota-core/actions/workflows/docker-network-health.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/docker-network-health.yml)
13+
[![docker-network-tests-nightly](https://github.com/iotaledger/iota-core/actions/workflows/docker-network-tests-nightly.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/docker-network-tests-nightly.yml)
14+
[![golangci-lint](https://github.com/iotaledger/iota-core/actions/workflows/golangci-lint.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/golangci-lint.yml)
15+
[![release](https://github.com/iotaledger/iota-core/actions/workflows/release.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/release.yml)
16+
[![unit-test](https://github.com/iotaledger/iota-core/actions/workflows/unit-test.yml/badge.svg)](https://github.com/iotaledger/iota-core/actions/workflows/unit-test.yml)
17+
---
18+
19+
In this repository you will find the following branches:
20+
21+
- `production`: this branch contains the latest released code targeted for the [IOTA mainnet](https://iota.org)
22+
- `staging`: this branch contains the latest released code targeted for the [shimmer network](https://shimmer.network)
23+
- `develop`: default branch where all development will get merged to. This represents the next iteration of the node.
24+
25+
## Notes
26+
27+
- **Please open a [new issue](https://github.com/iotaledger/iota-core/issues/new) if you detect an error or crash (or submit a PR if you have already fixed it).**
28+
29+
## Configuration
30+
31+
An overview over all configuration parameters can be found [here.](documentation/configuration.md)
32+
33+
## Setup
34+
We recommend not using this repo directly but using our pre-built [Docker images](https://hub.docker.com/r/iotaledger/iota-core).

tools/gendoc/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ func main() {
6969
createMarkdownFile(
7070
application,
7171
"configuration_header.md",
72-
"../../documentation/docs/references/configuration.md",
72+
"../../documentation/configuration.md",
7373
ignoreFlags,
7474
replaceTopicNames,
7575
)

0 commit comments

Comments
 (0)