Skip to content

Commit ec03f2b

Browse files
authored
Merge pull request #1 from thgO-O/chore/add-ci-coderabbit
2 parents 5930ed9 + edd4d9b commit ec03f2b

2 files changed

Lines changed: 225 additions & 0 deletions

File tree

.coderabbit.yaml

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
language: en-US
2+
tone_instructions: ''
3+
early_access: false
4+
enable_free_tier: true
5+
auto_resolve_threads: true
6+
reviews:
7+
profile: chill
8+
request_changes_workflow: false
9+
high_level_summary: false
10+
high_level_summary_placeholder: '@coderabbitai summary'
11+
high_level_summary_in_walkthrough: false
12+
auto_title_placeholder: '@coderabbitai'
13+
auto_title_instructions: ''
14+
review_status: true
15+
commit_status: true
16+
fail_commit_status: false
17+
collapse_walkthrough: false
18+
changed_files_summary: false
19+
sequence_diagrams: false
20+
assess_linked_issues: true
21+
related_issues: true
22+
related_prs: true
23+
suggested_labels: true
24+
auto_apply_labels: false
25+
suggested_reviewers: true
26+
auto_assign_reviewers: false
27+
poem: false
28+
labeling_instructions: []
29+
path_filters: []
30+
path_instructions: []
31+
abort_on_close: true
32+
auto_review:
33+
enabled: true
34+
auto_incremental_review: true
35+
ignore_title_keywords: []
36+
labels: []
37+
drafts: false
38+
base_branches: []
39+
finishing_touches:
40+
docstrings:
41+
enabled: true
42+
tools:
43+
ast-grep:
44+
rule_dirs: []
45+
util_dirs: []
46+
essential_rules: true
47+
packages: []
48+
shellcheck:
49+
enabled: true
50+
ruff:
51+
enabled: true
52+
markdownlint:
53+
enabled: true
54+
github-checks:
55+
enabled: true
56+
timeout_ms: 90000
57+
languagetool:
58+
enabled: true
59+
enabled_rules: []
60+
disabled_rules: []
61+
enabled_categories: []
62+
disabled_categories: []
63+
enabled_only: false
64+
level: default
65+
biome:
66+
enabled: true
67+
hadolint:
68+
enabled: true
69+
swiftlint:
70+
enabled: true
71+
phpstan:
72+
enabled: true
73+
level: default
74+
golangci-lint:
75+
enabled: true
76+
yamllint:
77+
enabled: true
78+
gitleaks:
79+
enabled: true
80+
checkov:
81+
enabled: true
82+
detekt:
83+
enabled: true
84+
eslint:
85+
enabled: true
86+
rubocop:
87+
enabled: true
88+
buf:
89+
enabled: true
90+
regal:
91+
enabled: true
92+
actionlint:
93+
enabled: true
94+
pmd:
95+
enabled: true
96+
cppcheck:
97+
enabled: true
98+
semgrep:
99+
enabled: true
100+
circleci:
101+
enabled: true
102+
sqlfluff:
103+
enabled: true
104+
prismaLint:
105+
enabled: true
106+
oxc:
107+
enabled: true
108+
shopifyThemeCheck:
109+
enabled: true
110+
chat:
111+
auto_reply: true
112+
integrations:
113+
jira:
114+
usage: auto
115+
linear:
116+
usage: auto
117+
knowledge_base:
118+
opt_out: false
119+
web_search:
120+
enabled: true
121+
learnings:
122+
scope: auto
123+
issues:
124+
scope: auto
125+
jira:
126+
usage: auto
127+
project_keys: []
128+
linear:
129+
usage: auto
130+
team_keys: []
131+
pull_requests:
132+
scope: auto
133+
code_generation:
134+
docstrings:
135+
language: en-US
136+
path_instructions: []

.github/workflows/ci.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: BTCPay Plugin tests
2+
3+
on:
4+
push:
5+
branches: ["master"]
6+
pull_request:
7+
branches: ["master"]
8+
9+
permissions:
10+
contents: read
11+
12+
concurrency:
13+
group: ${{ github.workflow }}-${{ github.ref }}
14+
cancel-in-progress: true
15+
16+
jobs:
17+
build:
18+
runs-on: ubuntu-22.04
19+
env:
20+
CI: true
21+
DOTNET_NOLOGO: true
22+
DOTNET_CLI_TELEMETRY_OPTOUT: true
23+
NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages
24+
FLORESTA_REPO: https://github.com/getfloresta/Floresta.git#v0.9.1
25+
26+
steps:
27+
- uses: actions/checkout@v4
28+
with:
29+
submodules: recursive
30+
31+
- name: Initialize and update submodules
32+
run: git submodule update --init --recursive
33+
34+
- name: Setup .NET
35+
uses: actions/setup-dotnet@v4
36+
with:
37+
dotnet-version: 10.0.x
38+
39+
- name: Cache NuGet packages
40+
uses: actions/cache@v4
41+
with:
42+
path: .nuget/packages
43+
key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj', '**/nuget.config', '**/global.json') }}
44+
restore-keys: |
45+
${{ runner.os }}-nuget-
46+
47+
- name: Set Docker test user
48+
run: |
49+
echo "DOTNET_TEST_UID=$(id -u)" >> "$GITHUB_ENV"
50+
echo "DOTNET_TEST_GID=$(id -g)" >> "$GITHUB_ENV"
51+
52+
- name: Build plugin and tests
53+
run: >
54+
dotnet build BTCPayServer.Plugins.Floresta.Tests/BTCPayServer.Plugins.Floresta.Tests.csproj
55+
-m:1
56+
-p:UseSharedCompilation=false
57+
-p:RunAnalyzers=false
58+
-p:EnableNETAnalyzers=false
59+
-nr:false
60+
61+
- name: Run unit tests
62+
run: >
63+
dotnet test BTCPayServer.Plugins.Floresta.Tests/BTCPayServer.Plugins.Floresta.Tests.csproj
64+
--no-build
65+
--filter "Integration!=Integration&Playwright!=Playwright"
66+
--logger "console;verbosity=normal"
67+
-m:1
68+
-p:UseSharedCompilation=false
69+
-p:RunAnalyzers=false
70+
-p:EnableNETAnalyzers=false
71+
-nr:false
72+
73+
- name: Run integration tests
74+
run: >
75+
docker compose -f docker-compose.integration.yml
76+
up --build --abort-on-container-exit --exit-code-from tests tests
77+
78+
- name: Cleanup integration stack
79+
if: always()
80+
run: docker compose -f docker-compose.integration.yml down --volumes --remove-orphans
81+
82+
- name: Run Playwright E2E tests
83+
run: >
84+
docker compose -f docker-compose.integration.yml --profile e2e
85+
up --build --abort-on-container-exit --exit-code-from e2e-tests e2e-tests
86+
87+
- name: Cleanup Playwright E2E stack
88+
if: always()
89+
run: docker compose -f docker-compose.integration.yml --profile e2e down --volumes --remove-orphans

0 commit comments

Comments
 (0)