mirror of
https://github.com/kreuzwerker/terraform-provider-docker.git
synced 2025-12-18 14:56:17 -05:00
chore: update Go version to 1.22 for consistency across workflows, jo… (#613)
* chore: update Go version to 1.22 for consistency across workflows, jobs, and modules. * build: Update GitHub Actions setup-go and golangci-lint versions. * refactor: Replace ioutil.ReadFile and ioutil.ReadAll with os.ReadFile and io.ReadAll. * go fmt * 🔄 Update actions/checkout and actions/setup-go to v4 and v5, respectively. * ✨ Refactor: Add b64 function to convert file to base64 in testacc_setup.sh. * ✨ Update Go version requirement in CONTRIBUTING.md. * ✨ Fix typo and improve error message format. * ✨ enhance: Improve error message in TestAccDockerContainer_uploadAsBase64. * ✨ Fix: Update file permissions for test2.txt in docker container tests.
This commit is contained in:
parent
54685a5fb9
commit
09528d1c0e
22 changed files with 97 additions and 80 deletions
20
.github/workflows/acc-test.yaml
vendored
20
.github/workflows/acc-test.yaml
vendored
|
|
@ -14,20 +14,20 @@ on:
|
|||
env:
|
||||
GOPROXY: https://proxy.golang.org,direct
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
TESTSUITE_TIMEOUT: "720s"
|
||||
|
||||
jobs:
|
||||
acc-test:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
timeout-minutes: 15
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
terraform_version:
|
||||
terraform_version:
|
||||
- "0.15.x"
|
||||
- "1.1.x"
|
||||
resource_type:
|
||||
resource_type:
|
||||
- "TestAccDockerConfig"
|
||||
- "TestAccDockerContainer"
|
||||
- "TestAccDockerImage"
|
||||
|
|
@ -48,8 +48,8 @@ jobs:
|
|||
- resource_type: TestAccDockerService
|
||||
registry: true
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: Setup cookies
|
||||
|
|
@ -67,10 +67,10 @@ jobs:
|
|||
run: make testacc_setup
|
||||
if: ${{ matrix.registry }}
|
||||
- name: Run acceptance tests
|
||||
env:
|
||||
TF_LOG: INFO
|
||||
env:
|
||||
TF_LOG: INFO
|
||||
TF_ACC: 1
|
||||
run: go test -v ./internal/provider -timeout ${{ env.TESTSUITE_TIMEOUT }} -run ${{ matrix.resource_type }}
|
||||
run: go test -v ./internal/provider -timeout ${{ env.TESTSUITE_TIMEOUT }} -run ${{ matrix.resource_type }}
|
||||
- name: Cleanup acceptance tests
|
||||
run: make testacc_cleanup
|
||||
if: ${{ matrix.registry }}
|
||||
if: ${{ matrix.registry }}
|
||||
|
|
|
|||
10
.github/workflows/compile.yaml
vendored
10
.github/workflows/compile.yaml
vendored
|
|
@ -17,18 +17,18 @@ on:
|
|||
|
||||
env:
|
||||
GOPROXY: https://proxy.golang.org,direct
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
|
||||
jobs:
|
||||
compile:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v4
|
||||
uses: goreleaser/goreleaser-action@v5
|
||||
with:
|
||||
version: latest
|
||||
args: release --rm-dist --skip-publish --snapshot --skip-sign
|
||||
|
|
|
|||
12
.github/workflows/golangci-lint.yaml
vendored
12
.github/workflows/golangci-lint.yaml
vendored
|
|
@ -6,19 +6,19 @@ on:
|
|||
pull_request:
|
||||
|
||||
env:
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
|
||||
jobs:
|
||||
golangci:
|
||||
name: lint
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v3
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: golangci-lint
|
||||
uses: golangci/golangci-lint-action@v3
|
||||
uses: golangci/golangci-lint-action@v5
|
||||
with:
|
||||
version: v1.49.0
|
||||
version: v1.57
|
||||
|
|
|
|||
10
.github/workflows/release.yaml
vendored
10
.github/workflows/release.yaml
vendored
|
|
@ -16,18 +16,18 @@ on:
|
|||
- "v*"
|
||||
|
||||
env:
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
|
||||
jobs:
|
||||
goreleaser:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: Unshallow
|
||||
run: git fetch --prune --unshallow
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v3
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: Import GPG key
|
||||
|
|
@ -37,7 +37,7 @@ jobs:
|
|||
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
PASSPHRASE: ${{ secrets.PASSPHRASE }}
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v4
|
||||
uses: goreleaser/goreleaser-action@v5
|
||||
with:
|
||||
version: latest
|
||||
args: release --rm-dist
|
||||
|
|
|
|||
8
.github/workflows/unit-test.yaml
vendored
8
.github/workflows/unit-test.yaml
vendored
|
|
@ -13,14 +13,14 @@ on:
|
|||
|
||||
env:
|
||||
GOPROXY: https://proxy.golang.org,direct
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
|
||||
jobs:
|
||||
unit-test:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: Setup cookies
|
||||
|
|
|
|||
6
.github/workflows/website-link.yaml
vendored
6
.github/workflows/website-link.yaml
vendored
|
|
@ -15,9 +15,9 @@ on:
|
|||
|
||||
jobs:
|
||||
markdown-link-check:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
||||
name: markdown-link-check docs/**/*.md
|
||||
with:
|
||||
|
|
@ -25,4 +25,4 @@ jobs:
|
|||
use-verbose-mode: 'yes'
|
||||
config-file: '.markdownlinkcheck.json'
|
||||
folder-path: 'docs'
|
||||
file-extension: '.md'
|
||||
file-extension: '.md'
|
||||
|
|
|
|||
18
.github/workflows/website-lint.yaml
vendored
18
.github/workflows/website-lint.yaml
vendored
|
|
@ -12,14 +12,14 @@ on:
|
|||
|
||||
env:
|
||||
GOPROXY: https://proxy.golang.org,direct
|
||||
GO_VERSION: "1.18"
|
||||
GO_VERSION: "1.22"
|
||||
|
||||
jobs:
|
||||
website-generation:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- name: Get dependencies
|
||||
|
|
@ -31,10 +31,10 @@ jobs:
|
|||
git diff --compact-summary --exit-code || \
|
||||
(echo; echo "Unexpected difference in directories after code generation. Run 'make website-generation' command and commit."; exit 1)
|
||||
website-lint-spellcheck-tffmt:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
- run: docker version
|
||||
|
|
@ -43,9 +43,9 @@ jobs:
|
|||
- name: Lint website
|
||||
run: make website-lint
|
||||
markdown-lint:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: avto-dev/markdown-lint@v1
|
||||
with:
|
||||
args: 'docs'
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
1.18
|
||||
1.22
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ Please use issue templates as much as possible.
|
|||
Prerequisites:
|
||||
|
||||
- `make`, `git`, `bash`
|
||||
- [Go 1.18+](https://golang.org/doc/install)
|
||||
- [Go 1.22+](https://golang.org/doc/install)
|
||||
- [Docker](https://www.docker.com/)
|
||||
- [Terraform 0.12+](https://terraform.io/)
|
||||
- [git-chglog](https://github.com/git-chglog/git-chglog)
|
||||
|
|
@ -67,7 +67,7 @@ make testacc_setup
|
|||
TF_LOG=INFO TF_ACC=1 go test -v ./internal/provider -timeout 60s -run ^TestAccDockerImage_data_private_config_file$
|
||||
|
||||
## run all test for a resource, e.g docker_container
|
||||
TF_LOG=INFO TF_ACC=1 go test -v ./internal/provider -timeout 360s -run TestAccDockerContainer
|
||||
TF_LOG=INFO TF_ACC=1 go test -v ./internal/provider -timeout 360s -run TestAccDockerContainer
|
||||
|
||||
## cleanup the local testing resources
|
||||
make testacc_cleanup
|
||||
|
|
@ -181,12 +181,12 @@ You can follow the documentation on
|
|||
|
||||
## Submit a pull request
|
||||
|
||||
Push your branch to your `terraform-provider-docker` fork and open a
|
||||
Push your branch to your `terraform-provider-docker` fork and open a
|
||||
pull request against the master branch.
|
||||
|
||||
## Releasing
|
||||
|
||||
Run one of the following commands (depending on the semver version you want to release):
|
||||
Run one of the following commands (depending on the semver version you want to release):
|
||||
|
||||
```sh
|
||||
make patch
|
||||
|
|
@ -196,5 +196,5 @@ make major
|
|||
|
||||
Those commands will automatically:
|
||||
- Replace all occurrences of the latest release, e.g. `2.11.0` with the new one, e.g. `2.12.0`: ``
|
||||
- Generate the `CHANGELOG.md`
|
||||
- Generate the `CHANGELOG.md`
|
||||
- Regenerate the website (`make website-generation`)
|
||||
|
|
|
|||
2
go.mod
2
go.mod
|
|
@ -1,6 +1,6 @@
|
|||
module github.com/terraform-providers/terraform-provider-docker
|
||||
|
||||
go 1.18
|
||||
go 1.22
|
||||
|
||||
require (
|
||||
github.com/client9/misspell v0.3.4
|
||||
|
|
|
|||
13
go.sum
13
go.sum
|
|
@ -28,6 +28,7 @@ cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUM
|
|||
cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=
|
||||
cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=
|
||||
cloud.google.com/go/compute v1.6.1 h1:2sMmt8prCn7DPaG4Pmh0N3Inmc8cT8ae5k1M6VJ9Wqc=
|
||||
cloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU=
|
||||
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
|
||||
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
|
||||
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
|
||||
|
|
@ -251,6 +252,7 @@ github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR
|
|||
github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ=
|
||||
github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM=
|
||||
github.com/containerd/continuity v0.2.3-0.20220330195504-d132b287edc8 h1:yGFEcFNMhze29DxAAB33v/1OMRYF/cM9iwwgV2P0ZrE=
|
||||
github.com/containerd/continuity v0.2.3-0.20220330195504-d132b287edc8/go.mod h1:pWygW9u7LtS1o4N/Tn0FoCFDIXZ7rxcMX7HX1Dmibvk=
|
||||
github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI=
|
||||
github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI=
|
||||
github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0=
|
||||
|
|
@ -398,6 +400,7 @@ github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI
|
|||
github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k=
|
||||
github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k=
|
||||
github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE=
|
||||
github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps=
|
||||
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
|
||||
github.com/fsnotify/fsnotify v1.5.4 h1:jRbGcIw6P2Meqdwuo0H1p6JVLbL5DHKAKlYndzMwVZI=
|
||||
|
|
@ -449,6 +452,7 @@ github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh
|
|||
github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
|
||||
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
|
||||
github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68=
|
||||
github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
|
||||
github.com/go-toolsmith/astcast v1.0.0 h1:JojxlmI6STnFVG9yOImLeGREv8W2ocNUM+iOhR6jE7g=
|
||||
github.com/go-toolsmith/astcast v1.0.0/go.mod h1:mt2OdQTeAQcY4DQgPSArJjHCcOwlX+Wl/kwN+LbLGQ4=
|
||||
github.com/go-toolsmith/astcopy v1.0.2 h1:YnWf5Rnh1hUudj11kei53kI57quN/VH6Hp1n+erozn0=
|
||||
|
|
@ -613,6 +617,7 @@ github.com/gostaticanalysis/nilerr v0.1.1 h1:ThE+hJP0fEp4zWLkWHWcRyI2Od0p7DlgYG3
|
|||
github.com/gostaticanalysis/nilerr v0.1.1/go.mod h1:wZYb6YI5YAxxq0i1+VJbY0s2YONW0HU0GPE3+5PWN4A=
|
||||
github.com/gostaticanalysis/testutil v0.3.1-0.20210208050101-bfb5c8eec0e4/go.mod h1:D+FIZ+7OahH3ePw/izIEeH5I06eKs1IKI4Xr64/Am3M=
|
||||
github.com/gostaticanalysis/testutil v0.4.0 h1:nhdCmubdmDF6VEatUNjgUZBJKWRqugoISdUv3PPQgHY=
|
||||
github.com/gostaticanalysis/testutil v0.4.0/go.mod h1:bLIoPefWXrRi/ssLFWX1dx7Repi5x3CuviD3dgAZaBU=
|
||||
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA=
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
|
||||
|
|
@ -701,6 +706,7 @@ github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c
|
|||
github.com/jgautheron/goconst v1.5.1 h1:HxVbL1MhydKs8R8n/HE5NPvzfaYmQJA3o879lE4+WcM=
|
||||
github.com/jgautheron/goconst v1.5.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4=
|
||||
github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE=
|
||||
github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74=
|
||||
github.com/jingyugao/rowserrcheck v1.1.1 h1:zibz55j/MJtLsjP1OF4bSdgXxwL1b+Vn7Tjzq7gFzUs=
|
||||
github.com/jingyugao/rowserrcheck v1.1.1/go.mod h1:4yvlZSDb3IyDTUZJUmpZfm2Hwok+Dtp+nu2qOq+er9c=
|
||||
github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af h1:KA9BjwUk7KlCh6S9EAGWBt1oExIUv9WyNCiRz5amv48=
|
||||
|
|
@ -751,6 +757,7 @@ github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORN
|
|||
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
|
||||
github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
|
|
@ -762,6 +769,7 @@ github.com/kunwardeep/paralleltest v1.0.6 h1:FCKYMF1OF2+RveWlABsdnmsvJrei5aoyZoa
|
|||
github.com/kunwardeep/paralleltest v1.0.6/go.mod h1:Y0Y0XISdZM5IKm3TREQMZ6iteqn1YuwCsJO/0kL9Zes=
|
||||
github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k=
|
||||
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
||||
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
|
||||
github.com/kyoh86/exportloopref v0.1.8 h1:5Ry/at+eFdkX9Vsdw3qU4YkvGtzuVfzT4X7S77LoN/M=
|
||||
github.com/kyoh86/exportloopref v0.1.8/go.mod h1:1tUcJeiioIs7VWe5gcOObrux3lb66+sBqGZrRkMwPgg=
|
||||
github.com/ldez/gomoddirectives v0.2.3 h1:y7MBaisZVDYmKvt9/l1mjNCiSA1BVn34U0ObUcJwlhA=
|
||||
|
|
@ -895,6 +903,7 @@ github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0
|
|||
github.com/onsi/ginkgo v1.12.1 h1:mFwc4LvZ0xpSvDZ3E+k8Yte0hLOMxXUlP+yXtJqkYfQ=
|
||||
github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk=
|
||||
github.com/onsi/ginkgo/v2 v2.1.4 h1:GNapqRSid3zijZ9H77KrgVG4/8KqiyRsxcSxe+7ApXY=
|
||||
github.com/onsi/ginkgo/v2 v2.1.4/go.mod h1:um6tUpWM/cxCK3/FK8BXqEiUMUwRgSM4JXG47RKZmLU=
|
||||
github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
|
||||
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
|
||||
github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
|
|
@ -903,6 +912,7 @@ github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7J
|
|||
github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||
github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc=
|
||||
github.com/onsi/gomega v1.20.0 h1:8W0cWlwFkflGPLltQvLRB7ZVD5HuP6ng320w2IS245Q=
|
||||
github.com/onsi/gomega v1.20.0/go.mod h1:DtrZpjmvpn2mPm4YWQa0/ALMDj9v4YxLgojwPeREyVo=
|
||||
github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
|
|
@ -1017,6 +1027,7 @@ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6So
|
|||
github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
|
||||
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
|
||||
github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
|
||||
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
|
||||
github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww=
|
||||
github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY=
|
||||
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
|
|
@ -1041,6 +1052,7 @@ github.com/securego/gosec/v2 v2.13.1 h1:7mU32qn2dyC81MH9L2kefnQyRMUarfDER3iQyMHc
|
|||
github.com/securego/gosec/v2 v2.13.1/go.mod h1:EO1sImBMBWFjOTFzMWfTRrZW6M15gm60ljzrmy/wtHo=
|
||||
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
|
||||
github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ=
|
||||
github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
|
||||
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c h1:W65qqJCIOVP4jpqPQ0YvHYKwcMEMVWIzWC5iNQQfBTU=
|
||||
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c/go.mod h1:/PevMnwAxekIXwN8qQyfc5gl2NlkB3CQlkizAbOkeBs=
|
||||
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
|
||||
|
|
@ -1368,6 +1380,7 @@ golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ
|
|||
golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
|
||||
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
|
||||
golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 h1:OSnWWcOd/CtWQC2cYSBgbTSJv3ciqd8r54ySIW2y3RE=
|
||||
golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
|
||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import (
|
|||
b64 "encoding/base64"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"regexp"
|
||||
|
|
@ -154,7 +154,7 @@ type TokenResponse struct {
|
|||
// Parses key/value pairs from a WWW-Authenticate header
|
||||
func parseAuthHeader(header string) map[string]string {
|
||||
parts := strings.SplitN(header, " ", 2)
|
||||
parts = regexp.MustCompile(`\w+\=\".*?\"|\w+[^\s\"]+?`).FindAllString(parts[1], -1) // expression to match auth headers.
|
||||
parts = regexp.MustCompile(`\w+=".*?"|\w+[^\s"]+?`).FindAllString(parts[1], -1) // expression to match auth headers.
|
||||
opts := make(map[string]string)
|
||||
|
||||
for _, part := range parts {
|
||||
|
|
@ -171,7 +171,7 @@ func getDigestFromResponse(response *http.Response) (string, error) {
|
|||
header := response.Header.Get("Docker-Content-Digest")
|
||||
|
||||
if header == "" {
|
||||
body, err := ioutil.ReadAll(response.Body)
|
||||
body, err := io.ReadAll(response.Body)
|
||||
if err != nil || len(body) == 0 {
|
||||
return "", fmt.Errorf("Error reading registry response body: %s", err)
|
||||
}
|
||||
|
|
@ -205,7 +205,7 @@ func getAuthToken(authHeader string, username string, password string, client *h
|
|||
return "", fmt.Errorf("Got bad response from registry: " + tokenResponse.Status)
|
||||
}
|
||||
|
||||
body, err := ioutil.ReadAll(tokenResponse.Body)
|
||||
body, err := io.ReadAll(tokenResponse.Body)
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("Error reading response body: %s", err)
|
||||
}
|
||||
|
|
@ -230,7 +230,7 @@ func getAuthToken(authHeader string, username string, password string, client *h
|
|||
func doDigestRequest(req *http.Request, client *http.Client) (*http.Response, error) {
|
||||
digestResponse, err := client.Do(req)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Error during registry request: %s", err)
|
||||
return nil, fmt.Errorf("error during registry request: %s", err)
|
||||
}
|
||||
|
||||
if digestResponse.StatusCode != http.StatusOK {
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import (
|
|||
"bytes"
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"io"
|
||||
"net/http"
|
||||
"regexp"
|
||||
"testing"
|
||||
|
|
@ -93,7 +93,7 @@ func TestGetDigestFromResponse(t *testing.T) {
|
|||
Header: http.Header{
|
||||
"Docker-Content-Digest": []string{headerContent},
|
||||
},
|
||||
Body: ioutil.NopCloser(bytes.NewReader([]byte("foo"))),
|
||||
Body: io.NopCloser(bytes.NewReader([]byte("foo"))),
|
||||
}
|
||||
|
||||
if digest, _ := getDigestFromResponse(respWithHeaders); digest != headerContent {
|
||||
|
|
@ -103,7 +103,7 @@ func TestGetDigestFromResponse(t *testing.T) {
|
|||
bodyDigest := "sha256:fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9"
|
||||
respWithoutHeaders := &http.Response{
|
||||
Header: make(http.Header),
|
||||
Body: ioutil.NopCloser(bytes.NewReader([]byte("bar"))),
|
||||
Body: io.NopCloser(bytes.NewReader([]byte("bar"))),
|
||||
}
|
||||
|
||||
if digest, _ := getDigestFromResponse(respWithoutHeaders); digest != bodyDigest {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"os"
|
||||
"strings"
|
||||
|
|
@ -449,7 +448,7 @@ func resourceDockerContainerCreate(ctx context.Context, d *schema.ResourceData,
|
|||
contentToUpload = string(decoded)
|
||||
}
|
||||
if source != "" {
|
||||
sourceContent, err := ioutil.ReadFile(source)
|
||||
sourceContent, err := os.ReadFile(source)
|
||||
if err != nil {
|
||||
return diag.Errorf("could not read file: %s", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import (
|
|||
"bytes"
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
|
|
@ -739,7 +738,7 @@ func TestAccDockerContainer_uploadSource(t *testing.T) {
|
|||
|
||||
wd, _ := os.Getwd()
|
||||
testFile := strings.ReplaceAll(filepath.Join(wd, "..", "..", "scripts", "testing", "testingFile"), "\\", "\\\\")
|
||||
testFileContent, _ := ioutil.ReadFile(testFile)
|
||||
testFileContent, _ := os.ReadFile(testFile)
|
||||
|
||||
testCheck := func(*terraform.State) error {
|
||||
client := testAccProvider.Meta().(*ProviderConfig).DockerClient
|
||||
|
|
@ -816,7 +815,7 @@ func TestAccDockerContainer_uploadSourceHash(t *testing.T) {
|
|||
|
||||
wd, _ := os.Getwd()
|
||||
testFile := strings.ReplaceAll(filepath.Join(wd, "..", "..", "scripts", "testing", "testingFile"), "\\", "\\\\")
|
||||
hash, _ := ioutil.ReadFile(testFile + ".base64")
|
||||
hash, _ := os.ReadFile(testFile + ".base64")
|
||||
grabFirstCheck := func(*terraform.State) error {
|
||||
firstRunId = c.ID
|
||||
return nil
|
||||
|
|
@ -873,7 +872,7 @@ func TestAccDockerContainer_uploadAsBase64(t *testing.T) {
|
|||
} else {
|
||||
mode := strconv.FormatInt(header.Mode, 8)
|
||||
if !strings.HasSuffix(mode, filePerm) {
|
||||
return fmt.Errorf("File permissions are incorrect: %s", mode)
|
||||
return fmt.Errorf("File permissions are incorrect: %s; wanted: %s", mode, filePerm)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -901,7 +900,7 @@ func TestAccDockerContainer_uploadAsBase64(t *testing.T) {
|
|||
testAccContainerRunning("docker_container.foo", &c),
|
||||
// DevSkim: ignore DS173237
|
||||
testCheck("/terraform/test1.txt", "894fc3f56edf2d3a4c5fb5cb71df910f958a2ed8", "744"),
|
||||
testCheck("/terraform/test2.txt", "foobar", "100644"),
|
||||
testCheck("/terraform/test2.txt", "foobar", "644"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "name", "tf-test"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "upload.#", "2"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "upload.0.content", ""),
|
||||
|
|
@ -923,7 +922,7 @@ func TestAccDockerContainer_uploadAsBase64(t *testing.T) {
|
|||
testAccContainerRunning("docker_container.foo", &c),
|
||||
// DevSkim: ignore DS173237
|
||||
testCheck("/terraform/test1.txt", "894fc3f56edf2d3a4c5fb5cb71df910f958a2ed8", "744"),
|
||||
testCheck("/terraform/test2.txt", "foobar", "100644"),
|
||||
testCheck("/terraform/test2.txt", "foobar", "644"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "name", "tf-test"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "upload.#", "2"),
|
||||
resource.TestCheckResourceAttr("docker_container.foo", "upload.0.content", ""),
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package provider
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
|
|
@ -429,7 +428,7 @@ func TestAccDockerImage_build(t *testing.T) {
|
|||
ctx := context.Background()
|
||||
wd, _ := os.Getwd()
|
||||
dfPath := filepath.Join(wd, "Dockerfile")
|
||||
if err := ioutil.WriteFile(dfPath, []byte(testDockerFileExample), 0o644); err != nil {
|
||||
if err := os.WriteFile(dfPath, []byte(testDockerFileExample), 0o644); err != nil {
|
||||
t.Fatalf("failed to create a Dockerfile %s for test: %+v", dfPath, err)
|
||||
}
|
||||
defer os.Remove(dfPath)
|
||||
|
|
@ -451,7 +450,7 @@ func TestAccDockerImage_build(t *testing.T) {
|
|||
}
|
||||
|
||||
const testDockerFileExample = `
|
||||
FROM python:3-stretch
|
||||
FROM python:3-bookworm
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
|
|
@ -467,7 +466,7 @@ func TestAccDockerImage_buildOutsideContext(t *testing.T) {
|
|||
ctx := context.Background()
|
||||
wd, _ := os.Getwd()
|
||||
dfPath := filepath.Join(wd, "..", "Dockerfile")
|
||||
if err := ioutil.WriteFile(dfPath, []byte(testDockerFileExample), 0o644); err != nil {
|
||||
if err := os.WriteFile(dfPath, []byte(testDockerFileExample), 0o644); err != nil {
|
||||
t.Fatalf("failed to create a Dockerfile %s for test: %+v", dfPath, err)
|
||||
}
|
||||
defer os.Remove(dfPath)
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import (
|
|||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"io"
|
||||
"log"
|
||||
"strings"
|
||||
|
||||
|
|
@ -34,7 +34,7 @@ func resourceDockerPluginCreate(d *schema.ResourceData, meta interface{}) error
|
|||
if err != nil {
|
||||
return fmt.Errorf("install a Docker plugin "+pluginName+": %w", err)
|
||||
}
|
||||
_, _ = ioutil.ReadAll(body)
|
||||
_, _ = io.ReadAll(body)
|
||||
key := pluginName
|
||||
if alias != "" {
|
||||
key = alias
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package provider
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
|
@ -46,7 +45,7 @@ func loadTestConfiguration(t *testing.T, resourceType resourceType, resourceName
|
|||
|
||||
testConfig := strings.ReplaceAll(filepath.Join(wd, "..", "..", TEST_CONFIG_BASE_DIR, resourceType.String(), resourceName, fmt.Sprintf("%s.tf", testName)), "\\", "\\\\")
|
||||
|
||||
testConfigContent, err := ioutil.ReadFile(testConfig)
|
||||
testConfigContent, err := os.ReadFile(testConfig)
|
||||
if err != nil {
|
||||
t.Errorf("failed to read test configuration at '%s': %v", testConfig, err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
function b64() {
|
||||
case "$(uname -o)" in
|
||||
GNU/Linux*) base64 -w 0 "$1";;
|
||||
Linux*) base64 -w 0 "$1";;
|
||||
Darwin*) base64 -i "$1";;
|
||||
*) exit 1;; #bail out, complaining loudly
|
||||
esac
|
||||
}
|
||||
echo -n "foo" > "$(pwd)/scripts/testing/testingFile"
|
||||
echo -n `base64 $(pwd)/scripts/testing/testingFile` > "$(pwd)/scripts/testing/testingFile.base64"
|
||||
b64 $(pwd)/scripts/testing/testingFile > "$(pwd)/scripts/testing/testingFile.base64"
|
||||
|
||||
# Create self signed certs
|
||||
mkdir -p "$(pwd)"/scripts/testing/certs
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ package main
|
|||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
)
|
||||
|
||||
const listenAddr = ":8080"
|
||||
|
|
@ -15,7 +15,7 @@ type config struct {
|
|||
}
|
||||
|
||||
func main() {
|
||||
configsContent, err := ioutil.ReadFile("configs.json")
|
||||
configsContent, err := os.ReadFile("configs.json")
|
||||
if err != nil {
|
||||
log.Fatalf("cannot open 'configs.json': %s", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ package main
|
|||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
)
|
||||
|
||||
const listenAddr = ":8080"
|
||||
|
|
@ -15,7 +15,7 @@ type config struct {
|
|||
}
|
||||
|
||||
func main() {
|
||||
configsContent, err := ioutil.ReadFile("configs.json")
|
||||
configsContent, err := os.ReadFile("configs.json")
|
||||
if err != nil {
|
||||
log.Fatalf("cannot open 'configs.json': %s", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ package main
|
|||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
)
|
||||
|
||||
const listenAddr = ":8085" // changed here on purpose
|
||||
|
|
@ -15,7 +15,7 @@ type config struct {
|
|||
}
|
||||
|
||||
func main() {
|
||||
configsContent, err := ioutil.ReadFile("configs.json")
|
||||
configsContent, err := os.ReadFile("configs.json")
|
||||
if err != nil {
|
||||
log.Fatalf("cannot open 'configs.json': %s", err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue