Skip to content

Commit e039b5c

Browse files
authored
Merge branch 'master' into feat/add-lb-pn-resource
2 parents ce09699 + 9e6eb04 commit e039b5c

File tree

1,122 files changed

+262823
-122678
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,122 files changed

+262823
-122678
lines changed

.github/labeler.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,3 +117,8 @@ webhosting:
117117
- changed-files:
118118
- any-glob-to-any-file:
119119
- internal/services/webhosting/**
120+
file:
121+
- changed-files:
122+
- any-glob-to-any-file:
123+
- internal/services/file/**
124+

.github/workflows/acceptance-tests.yaml

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: Acceptance Tests
22

3+
permissions:
4+
contents: read
5+
36
on:
47
pull_request:
58
merge_group:
@@ -19,6 +22,7 @@ jobs:
1922
- cockpit
2023
- container
2124
- domain
25+
- file
2226
- flexibleip
2327
- function
2428
- iam
@@ -53,8 +57,79 @@ jobs:
5357
uses: actions/setup-go@v5
5458
with:
5559
go-version: 1.24.0
60+
# This CI supports skipping flaky or broken tests via GitHub repository variables.
61+
# This allows quick fixes without code changes when tests break due to external factors.
62+
#
63+
# HOW TO SKIP TESTS:
64+
# 1. Go to: Settings → Secrets and variables → Actions → Variables
65+
# 2. Create or edit Repository variables:
66+
# - SKIP_TESTS_<PRODUCT>: Skip patterns for any product (uppercase)
67+
# - SKIP_TESTS_ALL: Skip patterns applied to ALL products
68+
#
69+
# PATTERN SYNTAX:
70+
# - Single test: TestAccServer_Basic
71+
# - Multiple tests: TestAccServer_Basic|TestAccServer_Other
72+
# - Wildcard: TestAccServer.*
73+
# - Contains: .*IPAM.*
74+
#
75+
# EXAMPLE:
76+
# Variable: SKIP_TESTS_BAREMETAL
77+
# Value: TestAccServer_Basic|TestAccServer_WithIPAMPrivateNetwork
78+
- name: Determine Skip Pattern
79+
id: skip-config
80+
run: |
81+
PRODUCT="${{ matrix.products }}"
82+
SKIP_PATTERN=""
83+
84+
case "$PRODUCT" in
85+
baremetal)
86+
SKIP_PATTERN="$SKIP_TESTS_BAREMETAL"
87+
;;
88+
esac
89+
90+
if [ -n "$SKIP_TESTS_ALL" ]; then
91+
if [ -n "$SKIP_PATTERN" ]; then
92+
SKIP_PATTERN="${SKIP_PATTERN}|${SKIP_TESTS_ALL}"
93+
else
94+
SKIP_PATTERN="$SKIP_TESTS_ALL"
95+
fi
96+
fi
97+
98+
echo "skip_pattern=$SKIP_PATTERN" >> $GITHUB_OUTPUT
99+
env:
100+
SKIP_TESTS_BAREMETAL: ${{ vars.SKIP_TESTS_BAREMETAL }}
101+
SKIP_TESTS_ALL: ${{ vars.SKIP_TESTS_ALL }}
56102
- name: Run Acceptance Tests
57-
run: go test -v ./internal/services/${{ matrix.products }} -timeout=2h
103+
run: |
104+
SKIP_PATTERN="${{ steps.skip-config.outputs.skip_pattern }}"
105+
106+
if [ -n "$SKIP_PATTERN" ]; then
107+
echo ""
108+
echo "SKIPPING TESTS"
109+
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
110+
echo "Pattern: $SKIP_PATTERN"
111+
echo ""
112+
echo "Tests that will be skipped:"
113+
go test -list=. ./internal/services/${{ matrix.products }} | grep -E "$SKIP_PATTERN" || true
114+
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
115+
echo ""
116+
117+
go test -v ./internal/services/${{ matrix.products }} -timeout=2h -skip="$SKIP_PATTERN"
118+
TEST_RESULT=$?
119+
else
120+
go test -v ./internal/services/${{ matrix.products }} -timeout=2h
121+
TEST_RESULT=$?
122+
fi
123+
124+
if [ -n "$SKIP_PATTERN" ]; then
125+
echo ""
126+
echo "CI Skip Configuration:"
127+
echo "Pattern: $SKIP_PATTERN"
128+
echo "To modify: Update SKIP_TESTS_$(echo ${{ matrix.products }} | tr '[:lower:]' '[:upper:]') in GitHub repository variables"
129+
fi
130+
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
131+
132+
exit $TEST_RESULT
58133
env:
59134
TF_LOG: DEBUG
60135
TF_ACC: 1

.github/workflows/actionlint.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
name: Lint GitHub Actions workflows
22
on: [push, pull_request]
33

4+
permissions:
5+
contents: read
6+
47
jobs:
58
actionlint:
69
runs-on: ubuntu-latest

.github/workflows/announce.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: Slack Announcement
22

3+
permissions:
4+
contents: read
5+
36
on:
47
release:
58
types:

.github/workflows/codeql-analysis.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
# or to provide custom queries or build logic.
66
name: "CodeQL"
77

8+
permissions:
9+
contents: read
10+
security-events: write
11+
actions: read
12+
813
on:
914
push:
1015
branches: [master]
@@ -24,7 +29,7 @@ jobs:
2429
matrix:
2530
# Override automatic language detection by changing the below list
2631
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
27-
language: ['go']
32+
language: ['go', 'actions']
2833
# Learn more...
2934
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
3035

.github/workflows/documentation.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
name: Documentation Checks
2+
3+
permissions:
4+
contents: read
5+
26
on:
37
push:
48
branches:
@@ -61,3 +65,5 @@ jobs:
6165
go-version: ${{ env.GO_VERSION }}
6266
- uses: hashicorp/setup-terraform@v3
6367
- run: go tool tfplugindocs validate
68+
- run: go tool tfplugindocs generate
69+
- run: git diff --exit-code docs

.github/workflows/golangci-lint.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,5 @@ jobs:
1515
- name: golangci-lint
1616
uses: golangci/[email protected]
1717
with:
18-
# Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
19-
version: latest
18+
version: v2.3.0
2019
args: --timeout 5m

.github/workflows/nightly.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: Nightly Acceptance Tests
22

3+
permissions:
4+
contents: read
5+
36
on:
47
schedule:
58
# Will run at 00:00 every day
@@ -13,6 +16,7 @@ jobs:
1316
products:
1417
- account
1518
- applesilicon
19+
- autoscaling
1620
- az
1721
- baremetal
1822
- billing

.github/workflows/purge.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
name: Manual Purge
2+
3+
permissions:
4+
contents: read
5+
26
on:
37
workflow_dispatch:
48

.github/workflows/release.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
# in `goreleaser` to indicate this is being used in a non-interactive mode.
1111
#
1212
name: release
13+
permissions:
14+
contents: write
1315
on:
1416
push:
1517
tags:

0 commit comments

Comments
 (0)