From e150b3653b1293b4c1560783a72966b3e9407bcb Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Wed, 15 Jun 2022 16:04:20 -0400 Subject: [PATCH 001/111] goreleaser: add support for missing platforms The goreleaser targets a subset of the platforms supported by packer, this commit adds the missing targets for the next release. --- .goreleaser.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.goreleaser.yml b/.goreleaser.yml index 12d06630..160f1ac0 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -33,6 +33,9 @@ builds: ldflags: - '-s -w -X {{ .ModulePath }}/version.Version={{.Version}} -X {{ .ModulePath }}/version.VersionPrerelease= ' goos: + - netbsd + - solaris + - openbsd - freebsd - windows - linux @@ -43,6 +46,8 @@ builds: - arm - arm64 ignore: + - goos: openbsd + goarch: arm64 - goos: darwin goarch: '386' - goos: linux From bfa4abf75d391945d4792ab8a50d44a9aea8278e Mon Sep 17 00:00:00 2001 From: Lucas Bajolet <105649352+lbajolet-hashicorp@users.noreply.github.com> Date: Tue, 28 Jun 2022 11:29:43 -0400 Subject: [PATCH 002/111] .github: don't ignore dependabot on releases (#57) The PRs merged by dependabot may affect the stability of releases and should be included in the changelog. In the past they hadn't been included as they may induce too much noise, we re-enable them with this commit, and will rollback if necessary. --- .github/release.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/release.yml b/.github/release.yml index d9178359..7719b043 100644 --- a/.github/release.yml +++ b/.github/release.yml @@ -2,8 +2,6 @@ changelog: exclude: labels: - ignore-for-release - authors: - - dependabot categories: - title: Breaking Changes 🛠 labels: From 951258862c62603bd0e2217f0ee4fcaa3b5f564a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 29 Jul 2022 13:15:13 +0000 Subject: [PATCH 003/111] Bump github.com/hashicorp/packer-plugin-sdk from 0.3.0 to 0.3.1 Bumps [github.com/hashicorp/packer-plugin-sdk](https://github.com/hashicorp/packer-plugin-sdk) from 0.3.0 to 0.3.1. - [Release notes](https://github.com/hashicorp/packer-plugin-sdk/releases) - [Changelog](https://github.com/hashicorp/packer-plugin-sdk/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/packer-plugin-sdk/compare/v0.3.0...v0.3.1) --- updated-dependencies: - dependency-name: github.com/hashicorp/packer-plugin-sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 6 +++--- go.sum | 41 +++++++++++++++++++++++++++++++++-------- 2 files changed, 36 insertions(+), 11 deletions(-) diff --git a/go.mod b/go.mod index ae8cfd0d..d2920192 100644 --- a/go.mod +++ b/go.mod @@ -4,8 +4,8 @@ go 1.17 require ( github.com/hashicorp/go-version v1.3.0 - github.com/hashicorp/hcl/v2 v2.12.0 - github.com/hashicorp/packer-plugin-sdk v0.3.0 + github.com/hashicorp/hcl/v2 v2.13.0 + github.com/hashicorp/packer-plugin-sdk v0.3.1 github.com/klauspost/compress v1.11.13 // indirect github.com/klauspost/crc32 v1.2.0 // indirect github.com/klauspost/pgzip v0.0.0-20151221113845-47f36e165cec @@ -77,7 +77,7 @@ require ( github.com/ugorji/go/codec v1.2.6 // indirect github.com/ulikunitz/xz v0.5.10 // indirect go.opencensus.io v0.23.0 // indirect - golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f // indirect + golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 // indirect golang.org/x/mobile v0.0.0-20210901025245-1fde1d6c3ca1 // indirect golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 // indirect golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f // indirect diff --git a/go.sum b/go.sum index 100cf7be..d7f90b21 100644 --- a/go.sum +++ b/go.sum @@ -56,6 +56,10 @@ github.com/ChrisTrenkamp/goxpath v0.0.0-20170922090931-c385f95c6022/go.mod h1:nu github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6 h1:w0E0fgc1YafGEh5cROhlROMWXiNoZqApk2PDN0M1+Ns= github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6/go.mod h1:nuWgzSkT5PnyOd+272uUmV0dnAnAn42Mk7PiQC5VzN4= github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= +github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= +github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/sprig v2.22.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= @@ -67,10 +71,13 @@ github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuy github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/antchfx/xpath v1.1.11 h1:WOFtK8TVAjLm3lbgqeP0arlHpvCEeTANeWZ/csPpJkQ= +github.com/antchfx/xpath v1.1.11/go.mod h1:i54GszH55fYfBmoZXapTHN8T8tkcHfRgLyVwwqzXNcs= github.com/antchfx/xquery v0.0.0-20180515051857-ad5b8c7a47b0 h1:JaCC8jz0zdMLk2m+qCCVLLLM/PL93p84w4pK3aJWj60= +github.com/antchfx/xquery v0.0.0-20180515051857-ad5b8c7a47b0/go.mod h1:LzD22aAzDP8/dyiCKFp31He4m2GPjl0AFyzDtZzUu9M= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3 h1:ZSTrOEhiM5J5RFxEaFvMZVEAM1KvT1YzbEOwB2EAGjA= github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= +github.com/apparentlymart/go-textseg v1.0.0 h1:rRmlIsPEEhUTIKQb7T++Nz/A5Q6C9IuX2wFoYVvnCs0= github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk= github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= @@ -132,6 +139,7 @@ github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:Htrtb github.com/dylanmei/iso8601 v0.1.0 h1:812NGQDBcqquTfH5Yeo7lwR0nzx/cKdsmf3qMjPURUI= github.com/dylanmei/iso8601 v0.1.0/go.mod h1:w9KhXSgIyROl1DefbMYIE7UVSIvELTbMrCfx+QkYnoQ= github.com/dylanmei/winrmtest v0.0.0-20170819153634-c2fbb09e6c08 h1:0bp6/GrNOrTDtSXe9YYGCwf8jp5Fb/b+4a6MTRm4qzY= +github.com/dylanmei/winrmtest v0.0.0-20170819153634-c2fbb09e6c08/go.mod h1:VBVDFSBXCIW8JaHQpI8lldSKfYaLMzP9oyq6IJ4fhzY= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -140,11 +148,13 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/fatih/camelcase v1.0.0/go.mod h1:yN2Sb0lFhZJUdVvtELVWefmrXpuZESvPmqwoZc+/fpc= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.12.0 h1:mRhaKNwANqRgUBGKmnI5ZxEk7QXmjQeCcuYFMX2bfcc= github.com/fatih/color v1.12.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= +github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94= github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8gVkE= github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= @@ -250,6 +260,7 @@ github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -290,6 +301,7 @@ github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjh github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-msgpack v0.5.5 h1:i9R9JSrqIz0QVLz3sz+i3YJdT7TTSLcfLLzJi9aZTuI= +github.com/hashicorp/go-msgpack v0.5.5/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+vmowP0z+KUhOZdA= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= @@ -324,14 +336,14 @@ github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+l github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= -github.com/hashicorp/hcl/v2 v2.12.0 h1:PsYxySWpMD4KPaoJLnsHwtK5Qptvj/4Q6s0t4sUxZf4= -github.com/hashicorp/hcl/v2 v2.12.0/go.mod h1:FwWsfWEjyV/CMj8s/gqAuiviY72rJ1/oayI9WftqcKg= +github.com/hashicorp/hcl/v2 v2.13.0 h1:0Apadu1w6M11dyGFxWnmhhcMjkbAiKCv7G1r/2QgCNc= +github.com/hashicorp/hcl/v2 v2.13.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/memberlist v0.2.2 h1:5+RffWKwqJ71YPu9mWsF7ZOscZmwfasdA8kbdC7AO2g= github.com/hashicorp/memberlist v0.2.2/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= -github.com/hashicorp/packer-plugin-sdk v0.3.0 h1:G4Uze/85X3n6c+8DawHdxptOZ0vHOeJ2LAAhBFLjYmg= -github.com/hashicorp/packer-plugin-sdk v0.3.0/go.mod h1:bqpbL7w5Ee2QWrUyAsZI/MdCYpw15ls4mxgn9Ei2DZc= +github.com/hashicorp/packer-plugin-sdk v0.3.1 h1:Gr/mnihsdUcPfGiruFL93BQkiFh3EFPwyxxTWkwvRsQ= +github.com/hashicorp/packer-plugin-sdk v0.3.1/go.mod h1:+GzydiXdn0CkueigqXBsX4Poz5gfmFXZ/DkxKt4fmt4= github.com/hashicorp/serf v0.9.5 h1:EBWvyu9tcRszt3Bxp3KNssBMP1KuHWyO51lz9+786iM= github.com/hashicorp/serf v0.9.5/go.mod h1:UWDWwZeL5cuWDJdl0C6wrvrUwEqtQ4ZKBKKENpqIUyk= github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE= @@ -344,8 +356,11 @@ github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKe github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493 h1:brI5vBRUlAlM34VFmnLPwjnCL/FxAJp9XvOdX6Zt+XE= github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869 h1:IPJ3dvxmJ4uczJe5YQdrYB16oTJlGSC/OyZDqUk9xX4= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869/go.mod h1:cJ6Cj7dQo+O6GJNiMx+Pa94qKj+TG8ONdKHgMNIyyag= @@ -404,6 +419,7 @@ github.com/miekg/dns v1.1.26 h1:gPxPSwALAeHJSjarOs00QjVdV9QoBvc1D2ujQUr5BzU= github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI= +github.com/mitchellh/cli v1.1.2/go.mod h1:6iaV0fGdElS6dPBx0EApTxHrcWvmJphyh2n8YBLPPZ4= github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff h1:bFJ74ac7ZK/jyislqiWdzrnENesFt43sNEBRh1xk/+g= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff/go.mod h1:g7SZj7ABpStq3tM4zqHiVEG5un/DZ1+qJJKO7qx1EvU= @@ -489,6 +505,7 @@ github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFo github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww= +github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUtVbo7ada43DJhG55ua/hjS5I= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= @@ -512,6 +529,7 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= +github.com/ugorji/go v1.2.6 h1:tGiWC9HENWE2tqYycIqFTNorMmFRVhNwCpDOpWqnk8E= github.com/ugorji/go v1.2.6/go.mod h1:anCg0y61KIhDlPZmnH+so+RQbysYVyDko0IMgJv0Nn0= github.com/ugorji/go/codec v1.2.6 h1:7kbGefxLoDBuYXOms4yD7223OpNMMPNPZxXk5TvFcyQ= github.com/ugorji/go/codec v1.2.6/go.mod h1:V6TCNZ4PHqoHGFZuSG1W8nrCzzdgA2DozYxWFFpvxTw= @@ -527,6 +545,7 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zclconf/go-cty v1.2.0/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8= github.com/zclconf/go-cty v1.8.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= github.com/zclconf/go-cty v1.10.0 h1:mp9ZXQeIcN8kAwuqorjH+Q+njbJKjLrvB2yIh4q7U+0= @@ -548,16 +567,17 @@ golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20190222235706-ffb98f73852f/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190418165655-df01cb2cc480/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= -golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f h1:OeJjE6G4dgCY4PIXvIRQbE8+RX+uXZyGhUy/ksMGJoc= -golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 h1:O8uGbHCqlTp2P6QJSLmCojM4mN6UemYv8K+dCnmHmu0= +golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -596,6 +616,7 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -642,6 +663,7 @@ golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLd golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= @@ -686,7 +708,6 @@ golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190502175342-a43fa875dd82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -732,6 +753,7 @@ golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -813,6 +835,7 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -976,6 +999,8 @@ gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v22aHH28wwpauUhK9Oo= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= From c7b109dac8c170b64611b319a73177610c747c27 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 5 Aug 2022 14:59:07 -0400 Subject: [PATCH 004/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1fc14e96..4cb1ecf6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -10,7 +10,7 @@ executors: resource_class: medium+ darwin: macos: - xcode: "12.0.0" + xcode: "13.4.1" commands: install-go-run-tests-unix: From 7f814d7c267b118d3aab5d6aaedc30761fd5ff5f Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 10 Aug 2022 10:20:24 -0400 Subject: [PATCH 005/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4cb1ecf6..9f51bf4c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ version: 2.1 executors: golang: docker: - - image: docker.mirror.hashicorp.services/cimg/go:1.17 + - image: docker.mirror.hashicorp.services/cimg/go:1.17.13 resource_class: medium+ darwin: macos: @@ -68,14 +68,14 @@ jobs: steps: - install-go-run-tests-unix: GOOS: darwin - GOVERSION: "1.17" + GOVERSION: "1.17.13" test-windows: executor: name: win/vs2019 shell: bash.exe steps: - install-go-run-tests-windows: - GOVERSION: "1.17" + GOVERSION: "1.17.13" check-lint: executor: golang steps: From 254a1797e464f01e99c8988a51b267131304dae9 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 10 Aug 2022 13:02:49 -0400 Subject: [PATCH 006/111] Managed by Terraform: Add CONTRIBUTING.md issue template --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 4de6da85..4b7e0541 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -66,7 +66,7 @@ runtime in order to build packer with the Vagrant plugin. 1. This project always releases from the latest version of golang. [Install go](https://golang.org/doc/install#install) To properly build from -source, you need to have golang >= v1.17 +source, you need to have golang >= 1.17 ## Setting up Vagrant plugin for dev From bfb6b51ac798aa93b959d4737cf11cb4f40a05bf Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 31 Aug 2022 13:57:14 -0400 Subject: [PATCH 007/111] Managed by Terraform: Update go-validate.yml github workflow --- .github/workflows/go-validate.yml | 71 +++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 .github/workflows/go-validate.yml diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml new file mode 100644 index 00000000..0099d023 --- /dev/null +++ b/.github/workflows/go-validate.yml @@ -0,0 +1,71 @@ +# +# This GitHub action runs basic linting checks for Packer. +# + +name: "Go Validate" + +on: [ workflow_dispatch, push ] + +permissions: + contents: read + +jobs: + get-go-version: + runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} + steps: + - uses: actions/checkout@v2 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Building with Go $(cat .go-version)" + echo "::set-output name=go-version::$(cat .go-version)" + check-mod-tidy: + runs-on: ubuntu-latest + name: Go Mod Tidy + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go mod tidy + check-lint: + runs-on: ubuntu-latest + name: Lint check + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - uses: golangci/golangci-lint-action@v3 + with: + # Optional: show only new issues if it's a pull request. The default value is `false`. + only-new-issues: true + check-fmt: + runs-on: ubuntu-latest + name: Gofmt check + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: | + go fmt ./... + echo "==> Checking that code complies with go fmt requirements..." + git diff --exit-code; if [ $$? -eq 1 ]; then \ + echo "Found files that are not fmt'ed."; \ + echo "You can use the command: \`go fmt ./...\` to reformat code."; \ + exit 1; \ + fi + check-generate: + runs-on: ubuntu-latest + name: Generate check + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: | + export PATH=$PATH:$(go env GOPATH)/bin + make generate From cc795dfb41cdf6d7c506bd51e2e2a5b7ba814002 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 31 Aug 2022 13:57:16 -0400 Subject: [PATCH 008/111] Managed by Terraform: Update go-version config --- .go-version | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .go-version diff --git a/.go-version b/.go-version new file mode 100644 index 00000000..25249246 --- /dev/null +++ b/.go-version @@ -0,0 +1,2 @@ +1.17.13 + From b55cda52314787a6e3fa01b3a506eafd7df653e3 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 31 Aug 2022 13:57:18 -0400 Subject: [PATCH 009/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 95 -------------------------------------------- 1 file changed, 95 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f51bf4c..a24c3241 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,3 @@ -orbs: - win: circleci/windows@1.0.0 - version: 2.1 executors: @@ -8,33 +5,8 @@ executors: docker: - image: docker.mirror.hashicorp.services/cimg/go:1.17.13 resource_class: medium+ - darwin: - macos: - xcode: "13.4.1" commands: - install-go-run-tests-unix: - parameters: - GOOS: - type: string - GOVERSION: - type: string - HOME: - type: string - default: "~" - steps: - - checkout - - run: curl https://dl.google.com/go/go<< parameters.GOVERSION >>.<< parameters.GOOS >>-amd64.tar.gz | tar -C << parameters.HOME >>/ -xz - - run: << parameters.HOME >>/go/bin/go test ./... -coverprofile=coverage.txt -covermode=atomic - install-go-run-tests-windows: - parameters: - GOVERSION: - type: string - steps: - - checkout - - run: curl https://dl.google.com/go/go<< parameters.GOVERSION >>.windows-amd64.zip --output ~/go<< parameters.GOVERSION >>.windows-amd64.zip - - run: unzip ~/go<< parameters.GOVERSION >>.windows-amd64.zip -d ~/ - - run: ~/go/bin/go test ./... -coverprofile=coverage.txt -covermode=atomic build-and-persist-plugin-binary: parameters: GOOS: @@ -56,63 +28,6 @@ commands: # # Check https://circleci.com/docs/2.0/language-go/ for more details jobs: - test-linux: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - checkout - - run: go test -count 1 ./... -coverprofile=coverage.txt -covermode=atomic -timeout=3m - test-darwin: - executor: darwin - working_directory: ~/go/github.com/hashicorp/packer-plugin-vagrant - steps: - - install-go-run-tests-unix: - GOOS: darwin - GOVERSION: "1.17.13" - test-windows: - executor: - name: win/vs2019 - shell: bash.exe - steps: - - install-go-run-tests-windows: - GOVERSION: "1.17.13" - check-lint: - executor: golang - steps: - - checkout - - run: git fetch --all - - run: - command: | - echo "==> Updating linter dependencies..." - curl -sSfL -q https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.23.8 - echo "==> Running linter on newly added Go source files..." - GO111MODULE=on golangci-lint run --new-from-rev=$(shell git merge-base origin/main HEAD) ./... - no_output_timeout: 30m - check-fmt: - executor: golang - steps: - - checkout - - run: | - go fmt ./... - echo "==> Checking that code complies with go fmt requirements..." - git diff --exit-code; if [ $$? -eq 1 ]; then \ - echo "Found files that are not fmt'ed."; \ - echo "You can use the command: \`go fmt ./...\` to reformat code."; \ - exit 1; \ - fi - check-generate: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - checkout - - run: | - make generate - echo "==> Checking that auto-generated code is not changed..." - git diff --exit-code; if [ $$? -eq 1 ]; then \ - echo "Found diffs in go generated code."; \ - echo "You can use the command: \`make generate\` to reformat code."; \ - exit 1; \ - fi build_linux: executor: golang steps: @@ -166,16 +81,6 @@ jobs: workflows: version: 2 - test: - jobs: - - test-linux - - test-darwin - - test-windows - check-code: - jobs: - - check-lint - - check-fmt - - check-generate build_plugin_binaries: jobs: - build_linux From 45bb323a8274fe7f1c9b0c0e61833e01af71251a Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 31 Aug 2022 13:57:21 -0400 Subject: [PATCH 010/111] Managed by Terraform: Update go-test.yml github workflow --- .github/workflows/go-test.yml | 51 +++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 .github/workflows/go-test.yml diff --git a/.github/workflows/go-test.yml b/.github/workflows/go-test.yml new file mode 100644 index 00000000..15b771a9 --- /dev/null +++ b/.github/workflows/go-test.yml @@ -0,0 +1,51 @@ +# +# This GitHub action runs Packer go tests across +# Windows, Linux, and MacOS runners. +# + +name: "Go Test" + +on: [ workflow_dispatch, push ] + +permissions: + contents: read + +jobs: + get-go-version: + runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} + steps: + - uses: actions/checkout@v2 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Building with Go $(cat .go-version)" + echo "::set-output name=go-version::$(cat .go-version)" + linux-go-tests: + runs-on: ubuntu-latest + name: Linux Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m + darwin-go-tests: + runs-on: macos-latest + name: Darwin Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m + windows-go-tests: + runs-on: windows-latest + name: Windows Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m From 714718ddc383c3cc035abcad66be09a157689b9e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Sat, 3 Sep 2022 17:53:04 -0400 Subject: [PATCH 011/111] Managed by Terraform: Update go-validate.yml github workflow --- .github/workflows/go-validate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 0099d023..c3b05330 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -40,7 +40,7 @@ jobs: go-version: ${{ needs.get-go-version.outputs.go-version }} - uses: golangci/golangci-lint-action@v3 with: - # Optional: show only new issues if it's a pull request. The default value is `false`. + version: v1.47.3 only-new-issues: true check-fmt: runs-on: ubuntu-latest From 193c5cc7a96d4f5e6b8c11b307d9c21bbc712897 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 14 Sep 2022 13:26:42 -0400 Subject: [PATCH 012/111] Update Plugin binary releases to match Packer The goreleaser binary release matrix has been updated to match the binaries platforms distributed by Packer core. A complete list of supported binaries can be found at https://releases.hashicorp.com/packer/1.8.3 - darwin/amd64 - darwin/arm64 - freebsd/386 - freebsd/amd64 - freebsd/arm - linux/386 - linux/amd64 - linux/arm - linux/arm64 - netbsd/386 - netbsd/amd64 - netbsd/arm - openbsd/386 - openbsd/amd64 - openbsd/arm - windows/386 - windows/amd64 - solaris/amd64 --- .goreleaser.yml | 47 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 160f1ac0..b8428ed6 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -27,6 +27,38 @@ builds: - amd64 binary: '{{ .ProjectName }}_v{{ .Version }}_{{ .Env.API_VERSION }}_{{ .Os }}_{{ .Arch }}' - + id: linux-builds + mod_timestamp: '{{ .CommitTimestamp }}' + flags: + - -trimpath #removes all file system paths from the compiled executable + ldflags: + - '-s -w -X {{ .ModulePath }}/version.Version={{.Version}} -X {{ .ModulePath }}/version.VersionPrerelease= ' + goos: + - linux + goarch: + - amd64 + - '386' + - arm + - arm64 + ignore: + - goos: linux + goarch: amd64 + binary: '{{ .ProjectName }}_v{{ .Version }}_{{ .Env.API_VERSION }}_{{ .Os }}_{{ .Arch }}' + - + id: darwin-builds + mod_timestamp: '{{ .CommitTimestamp }}' + flags: + - -trimpath #removes all file system paths from the compiled executable + ldflags: + - '-s -w -X {{ .ModulePath }}/version.Version={{.Version}} -X {{ .ModulePath }}/version.VersionPrerelease= ' + goos: + - darwin + goarch: + - amd64 + - arm64 + binary: '{{ .ProjectName }}_v{{ .Version }}_{{ .Env.API_VERSION }}_{{ .Os }}_{{ .Arch }}' + - + id: other-builds mod_timestamp: '{{ .CommitTimestamp }}' flags: - -trimpath #removes all file system paths from the compiled executable @@ -34,24 +66,21 @@ builds: - '-s -w -X {{ .ModulePath }}/version.Version={{.Version}} -X {{ .ModulePath }}/version.VersionPrerelease= ' goos: - netbsd - - solaris - openbsd - freebsd - windows - - linux - - darwin + - solaris goarch: - amd64 - '386' - arm - - arm64 ignore: - - goos: openbsd - goarch: arm64 - - goos: darwin + - goos: windows + goarch: arm + - goos: solaris + goarch: arm + - goos: solaris goarch: '386' - - goos: linux - goarch: amd64 binary: '{{ .ProjectName }}_v{{ .Version }}_{{ .Env.API_VERSION }}_{{ .Os }}_{{ .Arch }}' archives: - format: zip From 5ab5683de773ef1a4d2b0661c60335dcbcd60e8b Mon Sep 17 00:00:00 2001 From: Lucas Bajolet <105649352+lbajolet-hashicorp@users.noreply.github.com> Date: Mon, 19 Sep 2022 13:27:33 -0400 Subject: [PATCH 013/111] Fix CI (#64) * go.mod: run go mod tidy on go.mod/go.sum * post-processor: fix lint issues with steps --- go.mod | 5 +++-- go.sum | 1 - post-processor/vagrant-cloud/step_create_version.go | 2 +- post-processor/vagrant-cloud/step_release_version.go | 2 +- post-processor/vagrant-cloud/step_upload.go | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/go.mod b/go.mod index d2920192..dcf6fa45 100644 --- a/go.mod +++ b/go.mod @@ -6,8 +6,6 @@ require ( github.com/hashicorp/go-version v1.3.0 github.com/hashicorp/hcl/v2 v2.13.0 github.com/hashicorp/packer-plugin-sdk v0.3.1 - github.com/klauspost/compress v1.11.13 // indirect - github.com/klauspost/crc32 v1.2.0 // indirect github.com/klauspost/pgzip v0.0.0-20151221113845-47f36e165cec github.com/mitchellh/mapstructure v1.4.1 github.com/stretchr/testify v1.7.0 @@ -57,6 +55,8 @@ require ( github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493 // indirect github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect + github.com/klauspost/compress v1.11.13 // indirect + github.com/klauspost/crc32 v1.2.0 // indirect github.com/kr/fs v0.1.0 // indirect github.com/masterzen/simplexml v0.0.0-20190410153822-31eea3082786 // indirect github.com/masterzen/winrm v0.0.0-20210623064412-3b76017826b0 // indirect @@ -91,5 +91,6 @@ require ( google.golang.org/grpc v1.40.0 // indirect google.golang.org/protobuf v1.27.1 // indirect gopkg.in/square/go-jose.v2 v2.6.0 // indirect + gopkg.in/yaml.v2 v2.3.0 // indirect gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect ) diff --git a/go.sum b/go.sum index d7f90b21..c6fa65b8 100644 --- a/go.sum +++ b/go.sum @@ -997,7 +997,6 @@ gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/post-processor/vagrant-cloud/step_create_version.go b/post-processor/vagrant-cloud/step_create_version.go index b6cbd94e..8c4dbbab 100644 --- a/post-processor/vagrant-cloud/step_create_version.go +++ b/post-processor/vagrant-cloud/step_create_version.go @@ -25,7 +25,7 @@ func (s *stepCreateVersion) Run(ctx context.Context, state multistep.StateBag) m ui.Say(fmt.Sprintf("Creating version: %s", config.Version)) if hasVersion, v := box.HasVersion(config.Version); hasVersion { - ui.Message(fmt.Sprintf("Version exists, skipping creation")) + ui.Message("Version exists, skipping creation") state.Put("version", v) return multistep.ActionContinue } diff --git a/post-processor/vagrant-cloud/step_release_version.go b/post-processor/vagrant-cloud/step_release_version.go index 53614ea8..70da5132 100644 --- a/post-processor/vagrant-cloud/step_release_version.go +++ b/post-processor/vagrant-cloud/step_release_version.go @@ -44,7 +44,7 @@ func (s *stepReleaseVersion) Run(ctx context.Context, state multistep.StateBag) return multistep.ActionHalt } - ui.Message(fmt.Sprintf("Version successfully released and available")) + ui.Message("Version successfully released and available") return multistep.ActionContinue } diff --git a/post-processor/vagrant-cloud/step_upload.go b/post-processor/vagrant-cloud/step_upload.go index 953bdca8..d79a7972 100644 --- a/post-processor/vagrant-cloud/step_upload.go +++ b/post-processor/vagrant-cloud/step_upload.go @@ -32,7 +32,7 @@ func (s *stepUpload) Run(ctx context.Context, state multistep.StateBag) multiste Tries: 3, RetryDelay: (&retry.Backoff{InitialBackoff: 10 * time.Second, MaxBackoff: 10 * time.Second, Multiplier: 2}).Linear, }.Run(ctx, func(ctx context.Context) error { - ui.Message(fmt.Sprintf("Uploading box")) + ui.Message("Uploading box") var err error var resp *http.Response From b50e2a712fe97e8597b0984dd441b9da64562b92 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:27:20 -0400 Subject: [PATCH 014/111] Delete .github/workflows/go-test.yml --- .github/workflows/go-test.yml | 51 ----------------------------------- 1 file changed, 51 deletions(-) delete mode 100644 .github/workflows/go-test.yml diff --git a/.github/workflows/go-test.yml b/.github/workflows/go-test.yml deleted file mode 100644 index 15b771a9..00000000 --- a/.github/workflows/go-test.yml +++ /dev/null @@ -1,51 +0,0 @@ -# -# This GitHub action runs Packer go tests across -# Windows, Linux, and MacOS runners. -# - -name: "Go Test" - -on: [ workflow_dispatch, push ] - -permissions: - contents: read - -jobs: - get-go-version: - runs-on: ubuntu-latest - outputs: - go-version: ${{ steps.get-go-version.outputs.go-version }} - steps: - - uses: actions/checkout@v2 - - name: 'Determine Go version' - id: get-go-version - run: | - echo "Building with Go $(cat .go-version)" - echo "::set-output name=go-version::$(cat .go-version)" - linux-go-tests: - runs-on: ubuntu-latest - name: Linux Go tests - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 - with: - go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m - darwin-go-tests: - runs-on: macos-latest - name: Darwin Go tests - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 - with: - go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m - windows-go-tests: - runs-on: windows-latest - name: Windows Go tests - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 - with: - go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m From 7614af0fff440fcc6944d9e5ab08986c4116ea60 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:27:41 -0400 Subject: [PATCH 015/111] Managed by Terraform: Add CONTRIBUTING.md issue template --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 4b7e0541..8498edc9 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -66,7 +66,7 @@ runtime in order to build packer with the Vagrant plugin. 1. This project always releases from the latest version of golang. [Install go](https://golang.org/doc/install#install) To properly build from -source, you need to have golang >= 1.17 +source, you need to have golang >= 1.18 ## Setting up Vagrant plugin for dev From 39b40a1497a8fad96021e98767d4a3f7f7b9b79e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:27:42 -0400 Subject: [PATCH 016/111] Managed by Terraform: Update go-version config --- .go-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.go-version b/.go-version index 25249246..0135f66b 100644 --- a/.go-version +++ b/.go-version @@ -1,2 +1,2 @@ -1.17.13 +1.18.5 From 9c6ab3a72dd8f48025f8e98651d38763bf682911 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:27:51 -0400 Subject: [PATCH 017/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 32 +++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/go-test-windows.yml diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml new file mode 100644 index 00000000..b7e09a8b --- /dev/null +++ b/.github/workflows/go-test-windows.yml @@ -0,0 +1,32 @@ +# +# This GitHub action runs Packer go tests across +# Windows runners. +# + +name: "Go Test Windows" + +on: [ workflow_dispatch, push ] + +permissions: + contents: read + +jobs: + get-go-version: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Building with Go $(cat .go-version)" + echo "::set-output name=go-version::$(cat .go-version)" + windows-go-tests: + runs-on: windows-latest + name: Windows Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m + From 0e664761e1c56a845346458c8eae40086c34c4ed Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:59:41 -0400 Subject: [PATCH 018/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/go-test-darwin.yml diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml new file mode 100644 index 00000000..2216a2f1 --- /dev/null +++ b/.github/workflows/go-test-darwin.yml @@ -0,0 +1,33 @@ +# +# This GitHub action runs Packer go tests across +# MacOS runners. +# + +name: "Go Test MacOS" + +on: [ workflow_dispatch, push ] + +permissions: + contents: read + +jobs: + get-go-version: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Building with Go $(cat .go-version)" + echo "::set-output name=go-version::$(cat .go-version)" + darwin-go-tests: + runs-on: macos-latest + name: Darwin Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m + + From b3473405d36c197c1bcbefe9dcd9f3fa0e6da94b Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 15:59:43 -0400 Subject: [PATCH 019/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/go-test-linux.yml diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml new file mode 100644 index 00000000..72b25803 --- /dev/null +++ b/.github/workflows/go-test-linux.yml @@ -0,0 +1,31 @@ +# +# This GitHub action runs Packer go tests across +# Linux runners. +# + +name: "Go Test Linux" + +on: [ workflow_dispatch, push ] + +permissions: + contents: read + +jobs: + get-go-version: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Building with Go $(cat .go-version)" + echo "::set-output name=go-version::$(cat .go-version)" + Linux-go-tests: + runs-on: ubuntu-latest + name: Linux Go tests + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-go@v3 + with: + go-version: ${{ needs.get-go-version.outputs.go-version }} + - run: go test -race -count 1 ./... -timeout=3m From 6bdb943db7678e8e7acd9fa8cc603b8306d10abe Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 20 Sep 2022 16:00:12 -0400 Subject: [PATCH 020/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a24c3241..30b798c7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2.1 executors: golang: docker: - - image: docker.mirror.hashicorp.services/cimg/go:1.17.13 + - image: docker.mirror.hashicorp.services/cimg/go:1.18.5 resource_class: medium+ commands: @@ -45,10 +45,6 @@ jobs: steps: - build-and-persist-plugin-binary: GOOS: darwin - build_darwin_arm64: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - build-and-persist-plugin-binary: GOOS: darwin GOARCH: arm64 @@ -83,19 +79,18 @@ workflows: version: 2 build_plugin_binaries: jobs: - - build_linux - build_darwin - - build_darwin_arm64 - - build_windows - build_freebsd + - build_linux - build_openbsd - build_solaris + - build_windows - store_artifacts: requires: - - build_linux - build_darwin - - build_darwin_arm64 - - build_windows - build_freebsd + - build_linux - build_openbsd - build_solaris + - build_windows + \ No newline at end of file From 36c98116fe4d1d2279ba9400f66a52594aabcaf5 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 21 Sep 2022 15:26:24 -0400 Subject: [PATCH 021/111] Managed by Terraform: Update go-validate.yml GitHub workflow From 4b7632c409b34d68bb72540f4278879a18f2064a Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 29 Sep 2022 10:59:17 -0400 Subject: [PATCH 022/111] Delete .github/workflows/issues-opened.yml --- .github/workflows/issues-opened.yml | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 .github/workflows/issues-opened.yml diff --git a/.github/workflows/issues-opened.yml b/.github/workflows/issues-opened.yml deleted file mode 100644 index bbd80b1c..00000000 --- a/.github/workflows/issues-opened.yml +++ /dev/null @@ -1,16 +0,0 @@ -on: - issues: - types: [opened, transferred] - -jobs: - add-to-project: - name: Add issue to request queue - runs-on: ubuntu-latest - steps: - - uses: actions/add-to-project@main - with: - project-url: https://github.com/orgs/hashicorp/projects/105 - github-token: ${{ secrets.PACKER_PROJ_BOARD_TOKEN }} - labeled: bug, enhancement - label-operator: OR - From be2b2e56ff04f61fc52c4362fa8d3cd37b988104 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 5 Oct 2022 17:41:43 -0400 Subject: [PATCH 023/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 30b798c7..e46e9fd2 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -92,5 +92,4 @@ workflows: - build_linux - build_openbsd - build_solaris - - build_windows - \ No newline at end of file + - build_windows \ No newline at end of file From c59c4ba2caa79220ae34406ceeacdfcacdce57a2 Mon Sep 17 00:00:00 2001 From: "hashicorp-copywrite[bot]" Date: Wed, 12 Oct 2022 21:08:35 +0000 Subject: [PATCH 024/111] [COMPLIANCE] Update MPL 2.0 LICENSE --- LICENSE | 2 ++ 1 file changed, 2 insertions(+) diff --git a/LICENSE b/LICENSE index a612ad98..15eba9d8 100644 --- a/LICENSE +++ b/LICENSE @@ -1,3 +1,5 @@ +Copyright (c) 2021 HashiCorp, Inc. + Mozilla Public License Version 2.0 ================================== From 9558957a96a4673b5331c4cd65c0a61f6e166e7e Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Fri, 28 Oct 2022 15:29:23 -0400 Subject: [PATCH 025/111] docs: fix references to internal documentation --- docs/post-processors/vagrant-cloud.mdx | 8 ++++---- docs/post-processors/vagrant.mdx | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/post-processors/vagrant-cloud.mdx b/docs/post-processors/vagrant-cloud.mdx index fb4df977..0bbd657e 100644 --- a/docs/post-processors/vagrant-cloud.mdx +++ b/docs/post-processors/vagrant-cloud.mdx @@ -17,9 +17,9 @@ simple way. The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. Currently, the Vagrant Cloud post-processor will accept and upload boxes -supplied to it from the [Vagrant](/docs/post-processors/vagrant) or -[Artifice](/docs/post-processors/artifice) post-processors and the -[Vagrant](/docs/builders/vagrant) builder. +supplied to it from the [Vagrant](/packer/plugins/post-processors/vagrant/vagrant) or +[Artifice](/packer/docs/post-processors/artifice) post-processors and the +[Vagrant](/packer/plugins/builders/vagrant/vagrant) builder. You'll need to be familiar with Vagrant Cloud, have an upgraded account to enable box hosting, and be distributing your box via the [shorthand @@ -108,7 +108,7 @@ on Vagrant Cloud, as well as authentication and version information. - `box_download_url` (string) - Optional URL for a self-hosted box. If this is set the box will not be uploaded to the Vagrant Cloud. - This is a [template engine](/docs/templates/legacy_json_templates/engine). Therefore, you + This is a [template engine](/packer/docs/templates/legacy_json_templates/engine). Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: diff --git a/docs/post-processors/vagrant.mdx b/docs/post-processors/vagrant.mdx index 0078d2b6..4b3d5137 100644 --- a/docs/post-processors/vagrant.mdx +++ b/docs/post-processors/vagrant.mdx @@ -23,7 +23,7 @@ Packer to automatically create arbitrarily complex Vagrant boxes, and is in fact how the official boxes distributed by Vagrant are created. If you've never used a post-processor before, please read the documentation on -[using post-processors](/docs/templates/legacy_json_templates/post-processors) in templates. +[using post-processors](/packer/docs/templates/legacy_json_templates/post-processors) in templates. This knowledge will be expected for the remainder of this document. Because Vagrant boxes are @@ -83,7 +83,7 @@ more details about certain options in following sections. - `output` (string) - The full path to the box file that will be created by this post-processor. This is a - [template engine](/docs/templates/legacy_json_templates/engine). Therefore, you may use user + [template engine](/packer/docs/templates/legacy_json_templates/engine). Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: @@ -102,8 +102,8 @@ more details about certain options in following sections. `lxc`, `scaleway`, `hyperv`, `parallels`, `aws`, or `google`. - `vagrantfile_template` (string) - Path to a template to use for the - Vagrantfile that is packaged with the box. This option supports the usage of the [template engine](/docs/templates/legacy_json_templates/engine) - for JSON and the [contextual variables](/docs/templates/hcl_templates/contextual-variables) for HCL2. + Vagrantfile that is packaged with the box. This option supports the usage of the [template engine](/packer/docs/templates/legacy_json_templates/engine) + for JSON and the [contextual variables](/packer/docs/templates/hcl_templates/contextual-variables) for HCL2. - `vagrantfile_template_generated` (boolean) - By default, Packer will exit with an error if the file specified using the @@ -241,7 +241,7 @@ artifact (the raw virtual machine, for example), then you must configure Packer to keep it. Please see the [documentation on input -artifacts](/docs/templates/legacy_json_templates/post-processors#input-artifacts) for more information. +artifacts](/packer/docs/templates/legacy_json_templates/post-processors#input-artifacts) for more information. ### Docker From 215b056d2cd5ccffba23e54b85afbc31cc13581f Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:45:02 -0400 Subject: [PATCH 026/111] Managed by Terraform: Update go-version config --- .go-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.go-version b/.go-version index 0135f66b..a63f36d9 100644 --- a/.go-version +++ b/.go-version @@ -1,2 +1,2 @@ -1.18.5 +1.18.8 From 513c78afd9bfd40a2190d0e48968671b5991c5e6 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:47:17 -0400 Subject: [PATCH 027/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index c3b05330..eb83fae2 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -4,7 +4,7 @@ name: "Go Validate" -on: [ workflow_dispatch, push ] +on: [ push ] permissions: contents: read @@ -12,16 +12,16 @@ permissions: jobs: get-go-version: runs-on: ubuntu-latest - outputs: - go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - uses: actions/checkout@v2 - name: 'Determine Go version' id: get-go-version run: | - echo "Building with Go $(cat .go-version)" - echo "::set-output name=go-version::$(cat .go-version)" + echo "Found Go $(cat .go-version)" + echo "go-version=$(cat .go-version)" >> $GITHUB_OUTPUT check-mod-tidy: + needs: + - get-go-version runs-on: ubuntu-latest name: Go Mod Tidy steps: @@ -29,8 +29,12 @@ jobs: - uses: actions/setup-go@v3 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go mod tidy + - run: | + go version + go mod tidy check-lint: + needs: + - get-go-version runs-on: ubuntu-latest name: Lint check steps: @@ -43,6 +47,8 @@ jobs: version: v1.47.3 only-new-issues: true check-fmt: + needs: + - get-go-version runs-on: ubuntu-latest name: Gofmt check steps: @@ -59,6 +65,8 @@ jobs: exit 1; \ fi check-generate: + needs: + - get-go-version runs-on: ubuntu-latest name: Generate check steps: From 98f89473fdc7f2b3954fc7e03a0707da2be4cba0 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:47:47 -0400 Subject: [PATCH 028/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e46e9fd2..1c7de12d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2.1 executors: golang: docker: - - image: docker.mirror.hashicorp.services/cimg/go:1.18.5 + - image: docker.mirror.hashicorp.services/cimg/go:1.18 resource_class: medium+ commands: From 4101274953227b200bcf188d847b01a6c73f24c7 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:48:15 -0400 Subject: [PATCH 029/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index 2216a2f1..7bd3fef6 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -5,7 +5,7 @@ name: "Go Test MacOS" -on: [ workflow_dispatch, push ] +on: [ push ] permissions: contents: read @@ -18,9 +18,11 @@ jobs: - name: 'Determine Go version' id: get-go-version run: | - echo "Building with Go $(cat .go-version)" - echo "::set-output name=go-version::$(cat .go-version)" + echo "Found Go $(cat .go-version)" + echo "go-version=$(cat .go-version)" >> $GITHUB_OUTPUT darwin-go-tests: + needs: + - get-go-version runs-on: macos-latest name: Darwin Go tests steps: @@ -28,6 +30,8 @@ jobs: - uses: actions/setup-go@v3 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m + - run: | + echo "Testing with Go $(cat .go-version)" + go test -race -count 1 ./... -timeout=3m From fe57617e50ccc91aa1c555ddb58f7fe04a9131a0 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:48:17 -0400 Subject: [PATCH 030/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index 72b25803..a47f9c56 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -5,7 +5,7 @@ name: "Go Test Linux" -on: [ workflow_dispatch, push ] +on: [ push ] permissions: contents: read @@ -18,9 +18,11 @@ jobs: - name: 'Determine Go version' id: get-go-version run: | - echo "Building with Go $(cat .go-version)" - echo "::set-output name=go-version::$(cat .go-version)" - Linux-go-tests: + echo "Found Go $(cat .go-version)" + echo "go-version=$(cat .go-version)" >> $GITHUB_OUTPUT + linux-go-tests: + needs: + - get-go-version runs-on: ubuntu-latest name: Linux Go tests steps: @@ -28,4 +30,6 @@ jobs: - uses: actions/setup-go@v3 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m + - run: | + echo "Testing with Go $(cat .go-version)" + go test -race -count 1 ./... -timeout=3m From e413206f561de1e63ff8da1896f20df59a1eea7b Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 12:48:18 -0400 Subject: [PATCH 031/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index b7e09a8b..3c940920 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -5,7 +5,7 @@ name: "Go Test Windows" -on: [ workflow_dispatch, push ] +on: [ push ] permissions: contents: read @@ -18,9 +18,11 @@ jobs: - name: 'Determine Go version' id: get-go-version run: | - echo "Building with Go $(cat .go-version)" - echo "::set-output name=go-version::$(cat .go-version)" + echo "Found Go $(cat .go-version)" + echo "go-version=$(cat .go-version)" >> $GITHUB_OUTPUT windows-go-tests: + needs: + - get-go-version runs-on: windows-latest name: Windows Go tests steps: @@ -28,5 +30,7 @@ jobs: - uses: actions/setup-go@v3 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: go test -race -count 1 ./... -timeout=3m + - run: | + echo "Testing with Go $(cat .go-version)" + go test -race -count 1 ./... -timeout=3m From f68b5b7ce192bfcadfedd862a0fa05abdd9e4af6 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 13:51:30 -0400 Subject: [PATCH 032/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index 7bd3fef6..a0cbcfc2 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -13,6 +13,8 @@ permissions: jobs: get-go-version: runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - uses: actions/checkout@v2 - name: 'Determine Go version' @@ -31,7 +33,7 @@ jobs: with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | - echo "Testing with Go $(cat .go-version)" + echo "Testing with Go ${{ needs.get-go-version.outputs.go-version }}" go test -race -count 1 ./... -timeout=3m From 5df185b5c53e0d2f4e7e0f17be1fd27afccd0b32 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 13:51:31 -0400 Subject: [PATCH 033/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index a47f9c56..ab3440aa 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -13,6 +13,8 @@ permissions: jobs: get-go-version: runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - uses: actions/checkout@v2 - name: 'Determine Go version' @@ -31,5 +33,5 @@ jobs: with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | - echo "Testing with Go $(cat .go-version)" + echo "Testing with Go ${{ needs.get-go-version.outputs.go-version }}" go test -race -count 1 ./... -timeout=3m From ba60d64fe335cb09e69cbec979b78af954355571 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 13:51:33 -0400 Subject: [PATCH 034/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index 3c940920..b3741c73 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -13,6 +13,8 @@ permissions: jobs: get-go-version: runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - uses: actions/checkout@v2 - name: 'Determine Go version' @@ -31,6 +33,6 @@ jobs: with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | - echo "Testing with Go $(cat .go-version)" + echo "Testing with Go ${{ needs.get-go-version.outputs.go-version }}" go test -race -count 1 ./... -timeout=3m From 35f8ff60f405d6c5fa98a8b7e0e720d523e6479d Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Nov 2022 13:51:51 -0400 Subject: [PATCH 035/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index eb83fae2..27351d71 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -12,6 +12,8 @@ permissions: jobs: get-go-version: runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - uses: actions/checkout@v2 - name: 'Determine Go version' @@ -29,9 +31,7 @@ jobs: - uses: actions/setup-go@v3 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - run: | - go version - go mod tidy + - run: go mod tidy check-lint: needs: - get-go-version From 2c0f2c7bee29b706d00f1b2f897c1781e130a028 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 15 Nov 2022 21:04:24 -0500 Subject: [PATCH 036/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index ab3440aa..9b82c395 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -5,7 +5,11 @@ name: "Go Test Linux" -on: [ push ] +on: + push: + branches: + - 'main' + pull_request: permissions: contents: read From 322741062262883c65ce5233c17bd0509298f58e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 15 Nov 2022 21:04:31 -0500 Subject: [PATCH 037/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index a0cbcfc2..76b2ca3a 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -5,7 +5,11 @@ name: "Go Test MacOS" -on: [ push ] +on: + push: + branches: + - 'main' + pull_request: permissions: contents: read From 0c311162e32d01d4d9387ade22e50320a2bb5e43 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 15 Nov 2022 21:04:32 -0500 Subject: [PATCH 038/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index b3741c73..35b8f271 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -5,7 +5,11 @@ name: "Go Test Windows" -on: [ push ] +on: + push: + branches: + - 'main' + pull_request: permissions: contents: read From 3ba4eae7f4f1ed88fbb49ef67a9548bb970ed2ca Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 15 Nov 2022 21:05:07 -0500 Subject: [PATCH 039/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 27351d71..50ab32be 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -4,7 +4,11 @@ name: "Go Validate" -on: [ push ] +on: + push: + branches: + - 'main' + pull_request: permissions: contents: read From 14c7c17d96a42cf697bbfa6675b1b05899f1d313 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Thu, 8 Dec 2022 14:48:16 -0500 Subject: [PATCH 040/111] go.mod: bump go version from 1.17 to 1.18 --- go.mod | 2 +- go.sum | 39 --------------------------------------- 2 files changed, 1 insertion(+), 40 deletions(-) diff --git a/go.mod b/go.mod index dcf6fa45..9512e22b 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/hashicorp/packer-plugin-vagrant -go 1.17 +go 1.18 require ( github.com/hashicorp/go-version v1.3.0 diff --git a/go.sum b/go.sum index c6fa65b8..3e83f8c9 100644 --- a/go.sum +++ b/go.sum @@ -56,14 +56,9 @@ github.com/ChrisTrenkamp/goxpath v0.0.0-20170922090931-c385f95c6022/go.mod h1:nu github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6 h1:w0E0fgc1YafGEh5cROhlROMWXiNoZqApk2PDN0M1+Ns= github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6/go.mod h1:nuWgzSkT5PnyOd+272uUmV0dnAnAn42Mk7PiQC5VzN4= github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= -github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= -github.com/Masterminds/sprig v2.22.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= @@ -71,14 +66,9 @@ github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuy github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/antchfx/xpath v1.1.11 h1:WOFtK8TVAjLm3lbgqeP0arlHpvCEeTANeWZ/csPpJkQ= -github.com/antchfx/xpath v1.1.11/go.mod h1:i54GszH55fYfBmoZXapTHN8T8tkcHfRgLyVwwqzXNcs= github.com/antchfx/xquery v0.0.0-20180515051857-ad5b8c7a47b0 h1:JaCC8jz0zdMLk2m+qCCVLLLM/PL93p84w4pK3aJWj60= -github.com/antchfx/xquery v0.0.0-20180515051857-ad5b8c7a47b0/go.mod h1:LzD22aAzDP8/dyiCKFp31He4m2GPjl0AFyzDtZzUu9M= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3 h1:ZSTrOEhiM5J5RFxEaFvMZVEAM1KvT1YzbEOwB2EAGjA= -github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= -github.com/apparentlymart/go-textseg v1.0.0 h1:rRmlIsPEEhUTIKQb7T++Nz/A5Q6C9IuX2wFoYVvnCs0= -github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk= github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= @@ -139,7 +129,6 @@ github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:Htrtb github.com/dylanmei/iso8601 v0.1.0 h1:812NGQDBcqquTfH5Yeo7lwR0nzx/cKdsmf3qMjPURUI= github.com/dylanmei/iso8601 v0.1.0/go.mod h1:w9KhXSgIyROl1DefbMYIE7UVSIvELTbMrCfx+QkYnoQ= github.com/dylanmei/winrmtest v0.0.0-20170819153634-c2fbb09e6c08 h1:0bp6/GrNOrTDtSXe9YYGCwf8jp5Fb/b+4a6MTRm4qzY= -github.com/dylanmei/winrmtest v0.0.0-20170819153634-c2fbb09e6c08/go.mod h1:VBVDFSBXCIW8JaHQpI8lldSKfYaLMzP9oyq6IJ4fhzY= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -148,13 +137,11 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/fatih/camelcase v1.0.0/go.mod h1:yN2Sb0lFhZJUdVvtELVWefmrXpuZESvPmqwoZc+/fpc= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.12.0 h1:mRhaKNwANqRgUBGKmnI5ZxEk7QXmjQeCcuYFMX2bfcc= github.com/fatih/color v1.12.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= -github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94= github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8gVkE= github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= @@ -174,7 +161,6 @@ github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/me github.com/go-test/deep v1.0.2-0.20181118220953-042da051cf31/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= github.com/go-test/deep v1.0.2/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= 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/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw= github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU= @@ -199,7 +185,6 @@ github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= -github.com/golang/protobuf v1.1.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -260,7 +245,6 @@ github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -301,7 +285,6 @@ github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjh github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-msgpack v0.5.5 h1:i9R9JSrqIz0QVLz3sz+i3YJdT7TTSLcfLLzJi9aZTuI= -github.com/hashicorp/go-msgpack v0.5.5/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+vmowP0z+KUhOZdA= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= @@ -356,11 +339,8 @@ github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKe github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493 h1:brI5vBRUlAlM34VFmnLPwjnCL/FxAJp9XvOdX6Zt+XE= github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869 h1:IPJ3dvxmJ4uczJe5YQdrYB16oTJlGSC/OyZDqUk9xX4= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869/go.mod h1:cJ6Cj7dQo+O6GJNiMx+Pa94qKj+TG8ONdKHgMNIyyag= @@ -395,7 +375,6 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/masterzen/simplexml v0.0.0-20160608183007-4572e39b1ab9/go.mod h1:kCEbxUJlNDEBNbdQMkPSp6yaKcRXVI6f4ddk8Riv4bc= github.com/masterzen/simplexml v0.0.0-20190410153822-31eea3082786 h1:2ZKn+w/BJeL43sCxI2jhPLRv73oVVOjEKZjKkflyqxg= github.com/masterzen/simplexml v0.0.0-20190410153822-31eea3082786/go.mod h1:kCEbxUJlNDEBNbdQMkPSp6yaKcRXVI6f4ddk8Riv4bc= @@ -419,7 +398,6 @@ github.com/miekg/dns v1.1.26 h1:gPxPSwALAeHJSjarOs00QjVdV9QoBvc1D2ujQUr5BzU= github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI= -github.com/mitchellh/cli v1.1.2/go.mod h1:6iaV0fGdElS6dPBx0EApTxHrcWvmJphyh2n8YBLPPZ4= github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff h1:bFJ74ac7ZK/jyislqiWdzrnENesFt43sNEBRh1xk/+g= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff/go.mod h1:g7SZj7ABpStq3tM4zqHiVEG5un/DZ1+qJJKO7qx1EvU= @@ -430,7 +408,6 @@ github.com/mitchellh/go-testing-interface v0.0.0-20171004221916-a61a99592b77/go. github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= github.com/mitchellh/go-testing-interface v1.14.1 h1:jrgshOhYAUVNMAJiKbEu7EqAwgJJ2JqpQmpLJOu07cU= github.com/mitchellh/go-testing-interface v1.14.1/go.mod h1:gfgS7OtZj6MA4U1UrDRp04twqAjfvlZyCfX3sDjEym8= -github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= github.com/mitchellh/go-wordwrap v1.0.0/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= @@ -505,10 +482,8 @@ github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFo github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww= -github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUtVbo7ada43DJhG55ua/hjS5I= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= -github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= @@ -516,7 +491,6 @@ github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6Mwd github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/pflag v1.0.2/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1 h1:2vfRuCMp5sSVIDSqO8oNnWJq7mPa6KVP3iPIwFBuy8A= @@ -529,7 +503,6 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= -github.com/ugorji/go v1.2.6 h1:tGiWC9HENWE2tqYycIqFTNorMmFRVhNwCpDOpWqnk8E= github.com/ugorji/go v1.2.6/go.mod h1:anCg0y61KIhDlPZmnH+so+RQbysYVyDko0IMgJv0Nn0= github.com/ugorji/go/codec v1.2.6 h1:7kbGefxLoDBuYXOms4yD7223OpNMMPNPZxXk5TvFcyQ= github.com/ugorji/go/codec v1.2.6/go.mod h1:V6TCNZ4PHqoHGFZuSG1W8nrCzzdgA2DozYxWFFpvxTw= @@ -537,7 +510,6 @@ github.com/ulikunitz/xz v0.5.8/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oW github.com/ulikunitz/xz v0.5.10 h1:t92gobL9l3HE202wg3rlk19F6X+JOxl9BBrCCMYEYd8= github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= -github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -545,12 +517,8 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/zclconf/go-cty v1.2.0/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8= -github.com/zclconf/go-cty v1.8.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= github.com/zclconf/go-cty v1.10.0 h1:mp9ZXQeIcN8kAwuqorjH+Q+njbJKjLrvB2yIh4q7U+0= github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= -github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= @@ -573,9 +541,7 @@ golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3 golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 h1:O8uGbHCqlTp2P6QJSLmCojM4mN6UemYv8K+dCnmHmu0= golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -616,9 +582,7 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -663,7 +627,6 @@ golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLd golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= @@ -753,7 +716,6 @@ golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -835,7 +797,6 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= From a3145ab5e30be6b9ff0e37f5b6b02f54818a19ee Mon Sep 17 00:00:00 2001 From: Nico Verzijp Date: Thu, 5 Jan 2023 15:32:24 +0100 Subject: [PATCH 041/111] fix post-processor for windows --- .gitignore | 3 ++- post-processor/vagrant/libvirt.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 991c9d04..06c2a081 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ main dist/* -packer-plugin-vagrant \ No newline at end of file +packer-plugin-vagrant +packer-plugin-vagrant.exe \ No newline at end of file diff --git a/post-processor/vagrant/libvirt.go b/post-processor/vagrant/libvirt.go index 4a61bdf3..0edcf686 100644 --- a/post-processor/vagrant/libvirt.go +++ b/post-processor/vagrant/libvirt.go @@ -68,7 +68,7 @@ func (p *LibVirtProvider) Process(ui packersdk.Ui, artifact packersdk.Artifact, // Copy the disk image into the temporary directory (as box.img) for _, path := range artifact.Files() { - if strings.HasSuffix(path, "/"+diskName) { + if strings.HasSuffix(path, diskName) { ui.Message(fmt.Sprintf("Copying from artifact: %s", path)) dstPath := filepath.Join(dir, "box.img") if err = CopyContents(dstPath, path); err != nil { From 84305ce2ed6f5cd7e2c2eeba109ef49937ca43d7 Mon Sep 17 00:00:00 2001 From: Nico Verzijp Date: Sat, 7 Jan 2023 09:54:41 +0100 Subject: [PATCH 042/111] use filename.Base iso strings.HasSuffix --- post-processor/vagrant/libvirt.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/post-processor/vagrant/libvirt.go b/post-processor/vagrant/libvirt.go index 0edcf686..c5e71332 100644 --- a/post-processor/vagrant/libvirt.go +++ b/post-processor/vagrant/libvirt.go @@ -4,7 +4,6 @@ import ( "fmt" "path/filepath" "strconv" - "strings" packersdk "github.com/hashicorp/packer-plugin-sdk/packer" ) @@ -68,7 +67,7 @@ func (p *LibVirtProvider) Process(ui packersdk.Ui, artifact packersdk.Artifact, // Copy the disk image into the temporary directory (as box.img) for _, path := range artifact.Files() { - if strings.HasSuffix(path, diskName) { + if filepath.Base(path) == diskName { ui.Message(fmt.Sprintf("Copying from artifact: %s", path)) dstPath := filepath.Join(dir, "box.img") if err = CopyContents(dstPath, path); err != nil { From c6603b808a5c6e3bfffa7e58bb6bdc1c276bb351 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=B8=E5=B1=B1=20=E7=9C=9F=E5=A4=AA=E9=83=8E?= Date: Mon, 24 Oct 2022 16:20:17 +0900 Subject: [PATCH 043/111] replace ~/ with UserHomeDir to consturct an absolute path of the synced_folder closes: https://github.com/hashicorp/packer-plugin-vagrant/issues/68 --- builder/vagrant/builder.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/builder/vagrant/builder.go b/builder/vagrant/builder.go index 527fb90a..14c294c7 100644 --- a/builder/vagrant/builder.go +++ b/builder/vagrant/builder.go @@ -251,6 +251,10 @@ func (b *Builder) Prepare(raws ...interface{}) ([]string, []string, error) { } if b.config.SyncedFolder != "" { + if strings.HasPrefix(b.config.SyncedFolder, "~/") { + homedir, _ := os.UserHomeDir() + b.config.SyncedFolder = filepath.Join(homedir, b.config.SyncedFolder[2:]) + } b.config.SyncedFolder, err = filepath.Abs(b.config.SyncedFolder) if err != nil { errs = packersdk.MultiErrorAppend(errs, From ccadc6d85dfb0ffd7c4bee4955753676df270a02 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet <105649352+lbajolet-hashicorp@users.noreply.github.com> Date: Fri, 3 Mar 2023 19:47:03 -0500 Subject: [PATCH 044/111] gitignore: add .docs to gitignore (#77) --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 06c2a081..cce928a1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ main dist/* packer-plugin-vagrant -packer-plugin-vagrant.exe \ No newline at end of file +packer-plugin-vagrant.exe +.docs From 95a299c54d5db205c8a7cf8e7afae0f3adc3d9a3 Mon Sep 17 00:00:00 2001 From: "hashicorp-copywrite[bot]" <110428419+hashicorp-copywrite[bot]@users.noreply.github.com> Date: Fri, 3 Mar 2023 19:49:27 -0500 Subject: [PATCH 045/111] [COMPLIANCE] Add Copyright and License Headers (#81) Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com> --- .circleci/config.yml | 3 +++ .github/release.yml | 3 +++ .golangci.yml | 3 +++ .goreleaser.yml | 3 +++ builder/vagrant/artifact.go | 3 +++ builder/vagrant/artifact_test.go | 3 +++ builder/vagrant/builder.go | 3 +++ builder/vagrant/builder_test.go | 3 +++ builder/vagrant/driver.go | 3 +++ builder/vagrant/driver_2_2.go | 3 +++ builder/vagrant/driver_mock.go | 3 +++ builder/vagrant/ssh.go | 3 +++ builder/vagrant/step_add_box.go | 3 +++ builder/vagrant/step_add_box_test.go | 3 +++ builder/vagrant/step_create_vagrantfile.go | 3 +++ builder/vagrant/step_create_vagrantfile_test.go | 3 +++ builder/vagrant/step_package.go | 3 +++ builder/vagrant/step_ssh_config.go | 3 +++ builder/vagrant/step_ssh_config_test.go | 3 +++ builder/vagrant/step_up.go | 3 +++ builder/vagrant/step_up_test.go | 3 +++ example/vagrant_builder.pkr.hcl | 3 +++ example/vagrant_cloud_postprocessor.pkr.hcl | 3 +++ example/vagrant_postprocessor.pkr.hcl | 3 +++ main.go | 3 +++ post-processor/vagrant-cloud/artifact.go | 3 +++ post-processor/vagrant-cloud/artifact_test.go | 3 +++ post-processor/vagrant-cloud/client.go | 3 +++ post-processor/vagrant-cloud/client_test.go | 3 +++ post-processor/vagrant-cloud/post-processor.go | 3 +++ post-processor/vagrant-cloud/post-processor_test.go | 3 +++ post-processor/vagrant-cloud/step_confirm_upload.go | 3 +++ post-processor/vagrant-cloud/step_create_provider.go | 3 +++ post-processor/vagrant-cloud/step_create_version.go | 3 +++ post-processor/vagrant-cloud/step_prepare_upload.go | 3 +++ post-processor/vagrant-cloud/step_release_version.go | 3 +++ post-processor/vagrant-cloud/step_upload.go | 3 +++ post-processor/vagrant-cloud/step_verify_box.go | 3 +++ post-processor/vagrant/artifact.go | 3 +++ post-processor/vagrant/artifact_test.go | 3 +++ post-processor/vagrant/aws.go | 3 +++ post-processor/vagrant/aws_test.go | 3 +++ post-processor/vagrant/azure.go | 3 +++ post-processor/vagrant/azure_test.go | 3 +++ post-processor/vagrant/digitalocean.go | 3 +++ post-processor/vagrant/digitalocean_test.go | 3 +++ post-processor/vagrant/docker.go | 3 +++ post-processor/vagrant/docker_test.go | 3 +++ post-processor/vagrant/google.go | 3 +++ post-processor/vagrant/google_test.go | 3 +++ post-processor/vagrant/hyperv.go | 3 +++ post-processor/vagrant/libvirt.go | 3 +++ post-processor/vagrant/libvirt_test.go | 3 +++ post-processor/vagrant/lxc.go | 3 +++ post-processor/vagrant/lxc_test.go | 3 +++ post-processor/vagrant/parallels.go | 3 +++ post-processor/vagrant/parallels_test.go | 3 +++ post-processor/vagrant/post-processor.go | 3 +++ post-processor/vagrant/post-processor_test.go | 3 +++ post-processor/vagrant/provider.go | 3 +++ post-processor/vagrant/scaleway.go | 3 +++ post-processor/vagrant/tar_fix.go | 3 +++ post-processor/vagrant/tar_fix_go110.go | 3 +++ post-processor/vagrant/util.go | 3 +++ post-processor/vagrant/virtualbox.go | 3 +++ post-processor/vagrant/virtualbox_test.go | 3 +++ post-processor/vagrant/vmware.go | 3 +++ post-processor/vagrant/vmware_test.go | 3 +++ version/version.go | 3 +++ 69 files changed, 207 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1c7de12d..f1194b71 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + version: 2.1 executors: diff --git a/.github/release.yml b/.github/release.yml index 7719b043..47288604 100644 --- a/.github/release.yml +++ b/.github/release.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + changelog: exclude: labels: diff --git a/.golangci.yml b/.golangci.yml index c233fdfc..b0e00be4 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + issues: # List of regexps of issue texts to exclude, empty list by default. # But independently from this option we use default exclude patterns, diff --git a/.goreleaser.yml b/.goreleaser.yml index b8428ed6..1c48ac23 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # This is an example goreleaser.yaml file with some defaults. # Make sure to check the documentation at http://goreleaser.com env: diff --git a/builder/vagrant/artifact.go b/builder/vagrant/artifact.go index e1ec697f..5cbfaaf0 100644 --- a/builder/vagrant/artifact.go +++ b/builder/vagrant/artifact.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/artifact_test.go b/builder/vagrant/artifact_test.go index e9bfd515..8b3844cc 100644 --- a/builder/vagrant/artifact_test.go +++ b/builder/vagrant/artifact_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/builder.go b/builder/vagrant/builder.go index 14c294c7..01359a0e 100644 --- a/builder/vagrant/builder.go +++ b/builder/vagrant/builder.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + //go:generate packer-sdc struct-markdown //go:generate packer-sdc mapstructure-to-hcl2 -type Config diff --git a/builder/vagrant/builder_test.go b/builder/vagrant/builder_test.go index fdea9075..5751e38f 100644 --- a/builder/vagrant/builder_test.go +++ b/builder/vagrant/builder_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/driver.go b/builder/vagrant/driver.go index 56f7e8f6..70fcbeb2 100644 --- a/builder/vagrant/driver.go +++ b/builder/vagrant/driver.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/driver_2_2.go b/builder/vagrant/driver_2_2.go index 71fa4579..a7be8de0 100644 --- a/builder/vagrant/driver_2_2.go +++ b/builder/vagrant/driver_2_2.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/driver_mock.go b/builder/vagrant/driver_mock.go index 358041e4..acfd5c45 100644 --- a/builder/vagrant/driver_mock.go +++ b/builder/vagrant/driver_mock.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant // Create a mock driver so that we can test Vagrant builder steps diff --git a/builder/vagrant/ssh.go b/builder/vagrant/ssh.go index ae48134f..b2ae7e6d 100644 --- a/builder/vagrant/ssh.go +++ b/builder/vagrant/ssh.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_add_box.go b/builder/vagrant/step_add_box.go index 7c14ef10..4ee042aa 100644 --- a/builder/vagrant/step_add_box.go +++ b/builder/vagrant/step_add_box.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_add_box_test.go b/builder/vagrant/step_add_box_test.go index 2dabc9a8..82420e1d 100644 --- a/builder/vagrant/step_add_box_test.go +++ b/builder/vagrant/step_add_box_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_create_vagrantfile.go b/builder/vagrant/step_create_vagrantfile.go index 82da88a5..ecc80c5c 100644 --- a/builder/vagrant/step_create_vagrantfile.go +++ b/builder/vagrant/step_create_vagrantfile.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_create_vagrantfile_test.go b/builder/vagrant/step_create_vagrantfile_test.go index 0e8d752e..31f2111f 100644 --- a/builder/vagrant/step_create_vagrantfile_test.go +++ b/builder/vagrant/step_create_vagrantfile_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_package.go b/builder/vagrant/step_package.go index 0a036775..e99a28b3 100644 --- a/builder/vagrant/step_package.go +++ b/builder/vagrant/step_package.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_ssh_config.go b/builder/vagrant/step_ssh_config.go index 072ac471..fce9a07b 100644 --- a/builder/vagrant/step_ssh_config.go +++ b/builder/vagrant/step_ssh_config.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_ssh_config_test.go b/builder/vagrant/step_ssh_config_test.go index e1b9e751..a2885ba5 100644 --- a/builder/vagrant/step_ssh_config_test.go +++ b/builder/vagrant/step_ssh_config_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_up.go b/builder/vagrant/step_up.go index 2063e41c..926fb619 100644 --- a/builder/vagrant/step_up.go +++ b/builder/vagrant/step_up.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/builder/vagrant/step_up_test.go b/builder/vagrant/step_up_test.go index 9eb0ef84..a0846e03 100644 --- a/builder/vagrant/step_up_test.go +++ b/builder/vagrant/step_up_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/example/vagrant_builder.pkr.hcl b/example/vagrant_builder.pkr.hcl index 807ef613..aa4d5d79 100644 --- a/example/vagrant_builder.pkr.hcl +++ b/example/vagrant_builder.pkr.hcl @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + packer { required_plugins { vagrant = { diff --git a/example/vagrant_cloud_postprocessor.pkr.hcl b/example/vagrant_cloud_postprocessor.pkr.hcl index f22da645..2d4826ec 100644 --- a/example/vagrant_cloud_postprocessor.pkr.hcl +++ b/example/vagrant_cloud_postprocessor.pkr.hcl @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + packer { required_plugins { vagrant = { diff --git a/example/vagrant_postprocessor.pkr.hcl b/example/vagrant_postprocessor.pkr.hcl index 7e86d3ec..9cc025c0 100644 --- a/example/vagrant_postprocessor.pkr.hcl +++ b/example/vagrant_postprocessor.pkr.hcl @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + packer { required_plugins { docker = { diff --git a/main.go b/main.go index e26751cd..37936464 100644 --- a/main.go +++ b/main.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package main import ( diff --git a/post-processor/vagrant-cloud/artifact.go b/post-processor/vagrant-cloud/artifact.go index 9f1d4f4b..c041ea67 100644 --- a/post-processor/vagrant-cloud/artifact.go +++ b/post-processor/vagrant-cloud/artifact.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/artifact_test.go b/post-processor/vagrant-cloud/artifact_test.go index 1a3d7ea8..bc6b20af 100644 --- a/post-processor/vagrant-cloud/artifact_test.go +++ b/post-processor/vagrant-cloud/artifact_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/client.go b/post-processor/vagrant-cloud/client.go index 2c36f25e..9711910f 100644 --- a/post-processor/vagrant-cloud/client.go +++ b/post-processor/vagrant-cloud/client.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/client_test.go b/post-processor/vagrant-cloud/client_test.go index 18388da4..dcea3dee 100644 --- a/post-processor/vagrant-cloud/client_test.go +++ b/post-processor/vagrant-cloud/client_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/post-processor.go b/post-processor/vagrant-cloud/post-processor.go index b602776d..69b6f103 100644 --- a/post-processor/vagrant-cloud/post-processor.go +++ b/post-processor/vagrant-cloud/post-processor.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + //go:generate packer-sdc mapstructure-to-hcl2 -type Config // vagrant_cloud implements the packersdk.PostProcessor interface and adds a diff --git a/post-processor/vagrant-cloud/post-processor_test.go b/post-processor/vagrant-cloud/post-processor_test.go index 9053d1f3..28411453 100644 --- a/post-processor/vagrant-cloud/post-processor_test.go +++ b/post-processor/vagrant-cloud/post-processor_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_confirm_upload.go b/post-processor/vagrant-cloud/step_confirm_upload.go index a177ecbc..41954656 100644 --- a/post-processor/vagrant-cloud/step_confirm_upload.go +++ b/post-processor/vagrant-cloud/step_confirm_upload.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_create_provider.go b/post-processor/vagrant-cloud/step_create_provider.go index 5b937a00..751a981e 100644 --- a/post-processor/vagrant-cloud/step_create_provider.go +++ b/post-processor/vagrant-cloud/step_create_provider.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_create_version.go b/post-processor/vagrant-cloud/step_create_version.go index 8c4dbbab..2bff5920 100644 --- a/post-processor/vagrant-cloud/step_create_version.go +++ b/post-processor/vagrant-cloud/step_create_version.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_prepare_upload.go b/post-processor/vagrant-cloud/step_prepare_upload.go index 07ab7d7d..8932a974 100644 --- a/post-processor/vagrant-cloud/step_prepare_upload.go +++ b/post-processor/vagrant-cloud/step_prepare_upload.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_release_version.go b/post-processor/vagrant-cloud/step_release_version.go index 70da5132..19c47e2f 100644 --- a/post-processor/vagrant-cloud/step_release_version.go +++ b/post-processor/vagrant-cloud/step_release_version.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_upload.go b/post-processor/vagrant-cloud/step_upload.go index d79a7972..f4b2edc0 100644 --- a/post-processor/vagrant-cloud/step_upload.go +++ b/post-processor/vagrant-cloud/step_upload.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant-cloud/step_verify_box.go b/post-processor/vagrant-cloud/step_verify_box.go index 2731cbef..eeb508f6 100644 --- a/post-processor/vagrant-cloud/step_verify_box.go +++ b/post-processor/vagrant-cloud/step_verify_box.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrantcloud import ( diff --git a/post-processor/vagrant/artifact.go b/post-processor/vagrant/artifact.go index 5974e990..36ecd709 100644 --- a/post-processor/vagrant/artifact.go +++ b/post-processor/vagrant/artifact.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/artifact_test.go b/post-processor/vagrant/artifact_test.go index f17b4a9a..da35ade2 100644 --- a/post-processor/vagrant/artifact_test.go +++ b/post-processor/vagrant/artifact_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/aws.go b/post-processor/vagrant/aws.go index b3454a6b..f6edf3e3 100644 --- a/post-processor/vagrant/aws.go +++ b/post-processor/vagrant/aws.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/aws_test.go b/post-processor/vagrant/aws_test.go index b1c2d05f..99d14965 100644 --- a/post-processor/vagrant/aws_test.go +++ b/post-processor/vagrant/aws_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/azure.go b/post-processor/vagrant/azure.go index 405efdf7..5e5f08e7 100644 --- a/post-processor/vagrant/azure.go +++ b/post-processor/vagrant/azure.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/azure_test.go b/post-processor/vagrant/azure_test.go index bffb06b7..119df397 100644 --- a/post-processor/vagrant/azure_test.go +++ b/post-processor/vagrant/azure_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/digitalocean.go b/post-processor/vagrant/digitalocean.go index d2285209..05fdc74a 100644 --- a/post-processor/vagrant/digitalocean.go +++ b/post-processor/vagrant/digitalocean.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/digitalocean_test.go b/post-processor/vagrant/digitalocean_test.go index 98a8eb94..5af01dec 100644 --- a/post-processor/vagrant/digitalocean_test.go +++ b/post-processor/vagrant/digitalocean_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/docker.go b/post-processor/vagrant/docker.go index bb1dfe39..b2a70978 100644 --- a/post-processor/vagrant/docker.go +++ b/post-processor/vagrant/docker.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/docker_test.go b/post-processor/vagrant/docker_test.go index 380846bc..d0a0ece0 100644 --- a/post-processor/vagrant/docker_test.go +++ b/post-processor/vagrant/docker_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/google.go b/post-processor/vagrant/google.go index cbe7cb0a..a8d46cb5 100644 --- a/post-processor/vagrant/google.go +++ b/post-processor/vagrant/google.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/google_test.go b/post-processor/vagrant/google_test.go index 5d713d21..a3f8f6c1 100644 --- a/post-processor/vagrant/google_test.go +++ b/post-processor/vagrant/google_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/hyperv.go b/post-processor/vagrant/hyperv.go index 8597ff20..93ddb59c 100644 --- a/post-processor/vagrant/hyperv.go +++ b/post-processor/vagrant/hyperv.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/libvirt.go b/post-processor/vagrant/libvirt.go index c5e71332..49459d99 100644 --- a/post-processor/vagrant/libvirt.go +++ b/post-processor/vagrant/libvirt.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/libvirt_test.go b/post-processor/vagrant/libvirt_test.go index da03596a..016b1d84 100644 --- a/post-processor/vagrant/libvirt_test.go +++ b/post-processor/vagrant/libvirt_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/lxc.go b/post-processor/vagrant/lxc.go index 1b0a80ba..269e97ae 100644 --- a/post-processor/vagrant/lxc.go +++ b/post-processor/vagrant/lxc.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/lxc_test.go b/post-processor/vagrant/lxc_test.go index da5532c3..b280bc15 100644 --- a/post-processor/vagrant/lxc_test.go +++ b/post-processor/vagrant/lxc_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/parallels.go b/post-processor/vagrant/parallels.go index a40bafe9..588ee94a 100644 --- a/post-processor/vagrant/parallels.go +++ b/post-processor/vagrant/parallels.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/parallels_test.go b/post-processor/vagrant/parallels_test.go index 093680f8..c398f560 100644 --- a/post-processor/vagrant/parallels_test.go +++ b/post-processor/vagrant/parallels_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/post-processor.go b/post-processor/vagrant/post-processor.go index f33c2256..532cdbdc 100644 --- a/post-processor/vagrant/post-processor.go +++ b/post-processor/vagrant/post-processor.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + //go:generate packer-sdc mapstructure-to-hcl2 -type Config // vagrant implements the packersdk.PostProcessor interface and adds a diff --git a/post-processor/vagrant/post-processor_test.go b/post-processor/vagrant/post-processor_test.go index 4529ef27..b11888ef 100644 --- a/post-processor/vagrant/post-processor_test.go +++ b/post-processor/vagrant/post-processor_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/provider.go b/post-processor/vagrant/provider.go index 6b47ec29..b5297ce0 100644 --- a/post-processor/vagrant/provider.go +++ b/post-processor/vagrant/provider.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/scaleway.go b/post-processor/vagrant/scaleway.go index 0ff6259d..08863bb0 100644 --- a/post-processor/vagrant/scaleway.go +++ b/post-processor/vagrant/scaleway.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/tar_fix.go b/post-processor/vagrant/tar_fix.go index 0bca9295..654b5185 100644 --- a/post-processor/vagrant/tar_fix.go +++ b/post-processor/vagrant/tar_fix.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + //go:build !go1.10 // +build !go1.10 diff --git a/post-processor/vagrant/tar_fix_go110.go b/post-processor/vagrant/tar_fix_go110.go index 31018fb0..5c1a4c77 100644 --- a/post-processor/vagrant/tar_fix_go110.go +++ b/post-processor/vagrant/tar_fix_go110.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + //go:build go1.10 // +build go1.10 diff --git a/post-processor/vagrant/util.go b/post-processor/vagrant/util.go index 0a606c38..206f18ef 100644 --- a/post-processor/vagrant/util.go +++ b/post-processor/vagrant/util.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/virtualbox.go b/post-processor/vagrant/virtualbox.go index 859d6a86..39367dcf 100644 --- a/post-processor/vagrant/virtualbox.go +++ b/post-processor/vagrant/virtualbox.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/virtualbox_test.go b/post-processor/vagrant/virtualbox_test.go index 78a18130..129fd33d 100644 --- a/post-processor/vagrant/virtualbox_test.go +++ b/post-processor/vagrant/virtualbox_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/vmware.go b/post-processor/vagrant/vmware.go index 61a25264..a035baa8 100644 --- a/post-processor/vagrant/vmware.go +++ b/post-processor/vagrant/vmware.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/post-processor/vagrant/vmware_test.go b/post-processor/vagrant/vmware_test.go index e47dd308..b42e6a1c 100644 --- a/post-processor/vagrant/vmware_test.go +++ b/post-processor/vagrant/vmware_test.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package vagrant import ( diff --git a/version/version.go b/version/version.go index 53812de0..0c227b5a 100644 --- a/version/version.go +++ b/version/version.go @@ -1,3 +1,6 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + package version import "github.com/hashicorp/packer-plugin-sdk/version" From 7a35971ff2e9790f29a04e56815188dd1eb7723a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 4 Mar 2023 00:50:38 +0000 Subject: [PATCH 046/111] Bump github.com/hashicorp/packer-plugin-sdk from 0.3.1 to 0.3.4 Bumps [github.com/hashicorp/packer-plugin-sdk](https://github.com/hashicorp/packer-plugin-sdk) from 0.3.1 to 0.3.4. - [Release notes](https://github.com/hashicorp/packer-plugin-sdk/releases) - [Changelog](https://github.com/hashicorp/packer-plugin-sdk/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/packer-plugin-sdk/compare/v0.3.1...v0.3.4) --- updated-dependencies: - dependency-name: github.com/hashicorp/packer-plugin-sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 9512e22b..efa1c5c0 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.18 require ( github.com/hashicorp/go-version v1.3.0 github.com/hashicorp/hcl/v2 v2.13.0 - github.com/hashicorp/packer-plugin-sdk v0.3.1 + github.com/hashicorp/packer-plugin-sdk v0.3.4 github.com/klauspost/pgzip v0.0.0-20151221113845-47f36e165cec github.com/mitchellh/mapstructure v1.4.1 github.com/stretchr/testify v1.7.0 diff --git a/go.sum b/go.sum index 3e83f8c9..323d8f62 100644 --- a/go.sum +++ b/go.sum @@ -325,8 +325,8 @@ github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/memberlist v0.2.2 h1:5+RffWKwqJ71YPu9mWsF7ZOscZmwfasdA8kbdC7AO2g= github.com/hashicorp/memberlist v0.2.2/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= -github.com/hashicorp/packer-plugin-sdk v0.3.1 h1:Gr/mnihsdUcPfGiruFL93BQkiFh3EFPwyxxTWkwvRsQ= -github.com/hashicorp/packer-plugin-sdk v0.3.1/go.mod h1:+GzydiXdn0CkueigqXBsX4Poz5gfmFXZ/DkxKt4fmt4= +github.com/hashicorp/packer-plugin-sdk v0.3.4 h1:fmcHQtCGVa4tY2zeu/UffUHz0f3Y5RYc0OgR4XWf5oA= +github.com/hashicorp/packer-plugin-sdk v0.3.4/go.mod h1:XZRvL9kRqJJtB6rf9Lu2zWLJbf2/4ImWXDjp9O9UQGE= github.com/hashicorp/serf v0.9.5 h1:EBWvyu9tcRszt3Bxp3KNssBMP1KuHWyO51lz9+786iM= github.com/hashicorp/serf v0.9.5/go.mod h1:UWDWwZeL5cuWDJdl0C6wrvrUwEqtQ4ZKBKKENpqIUyk= github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE= From 64c01d28449341d7c01085ff6f327ab9dae23d46 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 30 Mar 2023 13:15:39 -0400 Subject: [PATCH 047/111] Managed by Terraform: Update config.yml github workflow --- .circleci/config.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f1194b71..1c7de12d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,3 @@ -# Copyright (c) HashiCorp, Inc. -# SPDX-License-Identifier: MPL-2.0 - version: 2.1 executors: From 493a9fd5cc1bf30aea9cfc57a819bd4f58838afa Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 7 Apr 2023 14:26:56 -0400 Subject: [PATCH 048/111] Managed by Terraform: Update dependabot.yml --- .github/dependabot.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1f794d7f..bead96fd 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -11,6 +11,4 @@ updates: interval: "daily" allow: - dependency-name: "github.com/hashicorp/packer-plugin-sdk" - - dependency-name: "github.com/hashicorp/hcl/v2" - - dependency-name: "github.com/zclconf/go-cty" From 9813fea035409f7a55a580438acec882e9f79a3d Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:21:26 -0400 Subject: [PATCH 049/111] Delete .circleci/config.yml --- .circleci/config.yml | 95 -------------------------------------------- 1 file changed, 95 deletions(-) delete mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 1c7de12d..00000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,95 +0,0 @@ -version: 2.1 - -executors: - golang: - docker: - - image: docker.mirror.hashicorp.services/cimg/go:1.18 - resource_class: medium+ - -commands: - build-and-persist-plugin-binary: - parameters: - GOOS: - type: string - GOARCH: - default: "amd64" - type: string - steps: - - checkout - - run: GOOS=<< parameters.GOOS >> GOARCH=<> go build -o ./pkg/packer_plugin_vagrant_<< parameters.GOOS >>_<< parameters.GOARCH >> . - - run: zip ./pkg/packer_plugin_vagrant_<< parameters.GOOS >>_<< parameters.GOARCH >>.zip ./pkg/packer_plugin_vagrant_<< parameters.GOOS >>_<< parameters.GOARCH >> - - run: rm ./pkg/packer_plugin_vagrant_<< parameters.GOOS >>_<< parameters.GOARCH >> - - persist_to_workspace: - root: . - paths: - - ./pkg/ - -# Golang CircleCI 2.0 configuration file -# -# Check https://circleci.com/docs/2.0/language-go/ for more details -jobs: - build_linux: - executor: golang - steps: - - build-and-persist-plugin-binary: - GOOS: linux - build_windows: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - build-and-persist-plugin-binary: - GOOS: windows - build_darwin: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - build-and-persist-plugin-binary: - GOOS: darwin - - build-and-persist-plugin-binary: - GOOS: darwin - GOARCH: arm64 - build_freebsd: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - build-and-persist-plugin-binary: - GOOS: freebsd - build_solaris: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - build-and-persist-plugin-binary: - GOOS: solaris - build_openbsd: - executor: golang - working_directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant - steps: - - build-and-persist-plugin-binary: - GOOS: openbsd - store_artifacts: - executor: golang - steps: - - attach_workspace: - at: . - - store_artifacts: - path: ./pkg/ - destination: / - -workflows: - version: 2 - build_plugin_binaries: - jobs: - - build_darwin - - build_freebsd - - build_linux - - build_openbsd - - build_solaris - - build_windows - - store_artifacts: - requires: - - build_darwin - - build_freebsd - - build_linux - - build_openbsd - - build_solaris - - build_windows \ No newline at end of file From 5e86c7a5704c4535ffd1b9c02363e38f07b8822a Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:22:52 -0400 Subject: [PATCH 050/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index 35b8f271..4edcaad6 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -20,7 +20,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 - name: 'Determine Go version' id: get-go-version run: | @@ -32,8 +32,8 @@ jobs: runs-on: windows-latest name: Windows Go tests steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 9e65a8d06265464bafca62daf2bd07177f1e2c94 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:22:55 -0400 Subject: [PATCH 051/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 50ab32be..0943665a 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -19,7 +19,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 - name: 'Determine Go version' id: get-go-version run: | @@ -31,8 +31,8 @@ jobs: runs-on: ubuntu-latest name: Go Mod Tidy steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: go mod tidy @@ -42,11 +42,11 @@ jobs: runs-on: ubuntu-latest name: Lint check steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - uses: golangci/golangci-lint-action@v3 + - uses: golangci/golangci-lint-action@08e2f20817b15149a52b5b3ebe7de50aff2ba8c5 # v3.4.0 with: version: v1.47.3 only-new-issues: true @@ -56,8 +56,8 @@ jobs: runs-on: ubuntu-latest name: Gofmt check steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | @@ -74,8 +74,8 @@ jobs: runs-on: ubuntu-latest name: Generate check steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 9b5a05f01177c49e29f719c7ba603f862089d613 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:22:57 -0400 Subject: [PATCH 052/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index 76b2ca3a..7ed48f5d 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -20,7 +20,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 - name: 'Determine Go version' id: get-go-version run: | @@ -32,8 +32,8 @@ jobs: runs-on: macos-latest name: Darwin Go tests steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 9fbdb2f2cfecd2a577c63b124f7ce6d12a1a4a95 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:22:59 -0400 Subject: [PATCH 053/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index 9b82c395..036fb0a3 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -20,7 +20,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 - name: 'Determine Go version' id: get-go-version run: | @@ -32,8 +32,8 @@ jobs: runs-on: ubuntu-latest name: Linux Go tests steps: - - uses: actions/checkout@v2 - - uses: actions/setup-go@v3 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 092f98a2c87c1789028bbc0336e1e6697f24c4f3 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:23:04 -0400 Subject: [PATCH 054/111] Managed by Terraform: Update config.yml github workflow --- .github/workflows/build_plugin_binaries.yml | 143 ++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 .github/workflows/build_plugin_binaries.yml diff --git a/.github/workflows/build_plugin_binaries.yml b/.github/workflows/build_plugin_binaries.yml new file mode 100644 index 00000000..938b6f43 --- /dev/null +++ b/.github/workflows/build_plugin_binaries.yml @@ -0,0 +1,143 @@ +name: hashicorp/packer-plugin-amazon/build_plugin_binaries +permissions: + contents: read +on: + push: + branches: + - main +jobs: + build_darwin: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: darwin + GOARCH: amd64 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: darwin + GOARCH: arm64 + build_freebsd: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: freebsd + GOARCH: 386 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: freebsd + GOARCH: amd64 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: freebsd + GOARCH: arm + build_linux: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: linux + GOARCH: 386 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: linux + GOARCH: amd64 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: linux + GOARCH: arm + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: linux + GOARCH: arm64 + build_netbsd: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: netbsd + GOARCH: 386 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: netbsd + GOARCH: amd64 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: netbsd + GOARCH: arm + build_openbsd: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: openbsd + GOARCH: 386 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: openbsd + GOARCH: amd64 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: openbsd + GOARCH: arm + build_solaris: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: solaris + GOARCH: amd64 + build_windows: + defaults: + run: + working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant + runs-on: ubuntu-latest + container: + image: docker.mirror.hashicorp.services/cimg/go:1.18 + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: windows + GOARCH: 386 + - uses: "./.github/actions/build-and-persist-plugin-binary" + with: + GOOS: windows + GOARCH: amd64 From f3888396b5502cbcfc73c3946e1a0dd9e0fc40c5 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:23:55 -0400 Subject: [PATCH 055/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0bc8bead..9789c23c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,30 +10,44 @@ # in `goreleaser` to indicate this is being used in a non-interactive mode. # name: release +permissions: + contents: write on: push: tags: - 'v*' jobs: + get-go-version: + runs-on: ubuntu-latest + outputs: + go-version: ${{ steps.get-go-version.outputs.go-version }} + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - name: 'Determine Go version' + id: get-go-version + run: | + echo "Found Go $(cat .go-version)" + echo "go-version=$(cat .go-version)" >> $GITHUB_OUTPUT goreleaser: + needs: + - get-go-version runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 - name: Unshallow run: git fetch --prune --unshallow - name: Set up Go - uses: actions/setup-go@v2 + uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: - go-version: 1.17 + go-version: ${{ needs.get-go-version.outputs.go-version }} - name: Describe plugin id: plugin_describe - run: echo "::set-output name=api_version::$(go run . describe | jq -r '.api_version')" + run: echo "api_version=$(go run . describe | jq -r '.api_version')" >> "$GITHUB_OUTPUT" - name: Install signore uses: hashicorp/setup-signore-package@v1 - - name: Run GoReleaser - uses: goreleaser/goreleaser-action@v2 + uses: goreleaser/goreleaser-action@f82d6c1c344bcacabba2c841718984797f664a6b # v4.2.0 with: version: latest args: release --rm-dist From 76502e04d7d94542633a7fd5561ad69ceacf34af Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 11 Apr 2023 15:26:14 -0400 Subject: [PATCH 056/111] Managed by Terraform: Update build-and-persist-plugin-binary github action --- .../action.yml | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/actions/build-and-persist-plugin-binary/action.yml diff --git a/.github/actions/build-and-persist-plugin-binary/action.yml b/.github/actions/build-and-persist-plugin-binary/action.yml new file mode 100644 index 00000000..ae54ffb2 --- /dev/null +++ b/.github/actions/build-and-persist-plugin-binary/action.yml @@ -0,0 +1,21 @@ +name: build-and-persist-plugin-binary +inputs: + GOOS: + required: true + GOARCH: + required: true +runs: + using: composite + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - run: "GOOS=${{ inputs.GOOS }} GOARCH=${{ inputs.GOARCH }} go build -o ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }} ." + shell: bash + - run: zip ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }}.zip ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }} + shell: bash + - run: rm ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }} + shell: bash + - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 + with: + name: "packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }}.zip" + path: "pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }}.zip" + retention-days: 30 From 137aa6ae03ca157debce47018396d1f9fc995d1e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 12 Apr 2023 10:31:22 -0400 Subject: [PATCH 057/111] Managed by Terraform: Update config.yml github workflow --- .github/workflows/build_plugin_binaries.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_plugin_binaries.yml b/.github/workflows/build_plugin_binaries.yml index 938b6f43..77416deb 100644 --- a/.github/workflows/build_plugin_binaries.yml +++ b/.github/workflows/build_plugin_binaries.yml @@ -1,4 +1,4 @@ -name: hashicorp/packer-plugin-amazon/build_plugin_binaries +name: hashicorp/packer-plugin-vagrant/build_plugin_binaries permissions: contents: read on: From 9a4ff864a9157cb6d83d0e8cd7ad5513bdf000b9 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 12 Apr 2023 10:31:25 -0400 Subject: [PATCH 058/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9789c23c..9b27e012 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,12 +10,13 @@ # in `goreleaser` to indicate this is being used in a non-interactive mode. # name: release -permissions: - contents: write on: push: tags: - 'v*' +permissions: + contents: write + packages: read jobs: get-go-version: runs-on: ubuntu-latest From b28826df60e8c5980cdbd5f42ffbc22547148aff Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:44:53 -0400 Subject: [PATCH 059/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9b27e012..19863ec6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # This GitHub action can publish assets for release when a tag is created. # Currently its setup to run on any tag that matches the pattern "v*" (ie. v0.1.0). # From 6c9703656ff6c81a8bbb3858710494ef625998e0 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:44:55 -0400 Subject: [PATCH 060/111] Managed by Terraform: Update config.yml github workflow --- .github/workflows/build_plugin_binaries.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/build_plugin_binaries.yml b/.github/workflows/build_plugin_binaries.yml index 77416deb..63fb21a5 100644 --- a/.github/workflows/build_plugin_binaries.yml +++ b/.github/workflows/build_plugin_binaries.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + name: hashicorp/packer-plugin-vagrant/build_plugin_binaries permissions: contents: read From ff2bdda3a1c6d7fc69a33899fa3bdd6ea7fb1a1a Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:45:02 -0400 Subject: [PATCH 061/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 0943665a..3d632d58 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # # This GitHub action runs basic linting checks for Packer. # From dceeff4b65237a09f5c2573c796e1fff6ddb23c3 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:45:06 -0400 Subject: [PATCH 062/111] Managed by Terraform: Update build-and-persist-plugin-binary github action --- .github/actions/build-and-persist-plugin-binary/action.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/actions/build-and-persist-plugin-binary/action.yml b/.github/actions/build-and-persist-plugin-binary/action.yml index ae54ffb2..96b71eca 100644 --- a/.github/actions/build-and-persist-plugin-binary/action.yml +++ b/.github/actions/build-and-persist-plugin-binary/action.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + name: build-and-persist-plugin-binary inputs: GOOS: From a22dd88bc0970732dc3cf4da6eb7ffc2a018db3b Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:45:27 -0400 Subject: [PATCH 063/111] Managed by Terraform: Update dependabot.yml --- .github/dependabot.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bead96fd..108edd0d 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,7 +1,5 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 version: 2 updates: From 84a4e149aa6c7183742bb9e2aae25a30e7a4339d Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:46:06 -0400 Subject: [PATCH 064/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index 4edcaad6..caca3eb2 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # # This GitHub action runs Packer go tests across # Windows runners. From 78968baa8bf0a1279064714d8988fbfba5d4bc19 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:46:23 -0400 Subject: [PATCH 065/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index 036fb0a3..b6c16a8c 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # # This GitHub action runs Packer go tests across # Linux runners. From 56ff381d691db18a0f6a6203b6131151612e0d75 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 14 Apr 2023 10:47:22 -0400 Subject: [PATCH 066/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index 7ed48f5d..cd23a4c4 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -1,4 +1,7 @@ # +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # This GitHub action runs Packer go tests across # MacOS runners. # From be4add8226cc69e369019667f804392bd6a3df88 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 9 Mar 2023 13:59:47 +0000 Subject: [PATCH 067/111] Bump github.com/hashicorp/packer-plugin-sdk from 0.3.4 to 0.4.0 Bumps [github.com/hashicorp/packer-plugin-sdk](https://github.com/hashicorp/packer-plugin-sdk) from 0.3.4 to 0.4.0. - [Release notes](https://github.com/hashicorp/packer-plugin-sdk/releases) - [Changelog](https://github.com/hashicorp/packer-plugin-sdk/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/packer-plugin-sdk/compare/v0.3.4...v0.4.0) --- updated-dependencies: - dependency-name: github.com/hashicorp/packer-plugin-sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 43 +++--- go.sum | 471 +++++++-------------------------------------------------- 2 files changed, 79 insertions(+), 435 deletions(-) diff --git a/go.mod b/go.mod index efa1c5c0..53ca9f09 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/hashicorp/packer-plugin-vagrant go 1.18 require ( - github.com/hashicorp/go-version v1.3.0 + github.com/hashicorp/go-version v1.6.0 github.com/hashicorp/hcl/v2 v2.13.0 - github.com/hashicorp/packer-plugin-sdk v0.3.4 + github.com/hashicorp/packer-plugin-sdk v0.4.0 github.com/klauspost/pgzip v0.0.0-20151221113845-47f36e165cec github.com/mitchellh/mapstructure v1.4.1 github.com/stretchr/testify v1.7.0 @@ -13,14 +13,17 @@ require ( ) require ( - cloud.google.com/go v0.94.0 // indirect - cloud.google.com/go/storage v1.16.1 // indirect + cloud.google.com/go v0.105.0 // indirect + cloud.google.com/go/compute v1.12.1 // indirect + cloud.google.com/go/compute/metadata v0.1.1 // indirect + cloud.google.com/go/iam v0.6.0 // indirect + cloud.google.com/go/storage v1.27.0 // indirect github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c // indirect github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6 // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect github.com/armon/go-metrics v0.3.9 // indirect - github.com/aws/aws-sdk-go v1.40.34 // indirect + github.com/aws/aws-sdk-go v1.44.114 // indirect github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect github.com/cenkalti/backoff/v3 v3.2.2 // indirect github.com/davecgh/go-spew v1.1.1 // indirect @@ -31,15 +34,16 @@ require ( github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.2 // indirect github.com/golang/snappy v0.0.4 // indirect - github.com/google/go-cmp v0.5.6 // indirect + github.com/google/go-cmp v0.5.9 // indirect github.com/google/uuid v1.3.0 // indirect - github.com/googleapis/gax-go/v2 v2.1.0 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.2.0 // indirect + github.com/googleapis/gax-go/v2 v2.6.0 // indirect github.com/hashicorp/consul/api v1.10.1 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect - github.com/hashicorp/go-getter/gcs/v2 v2.1.0 // indirect - github.com/hashicorp/go-getter/s3/v2 v2.1.0 // indirect - github.com/hashicorp/go-getter/v2 v2.1.0 // indirect + github.com/hashicorp/go-getter/gcs/v2 v2.2.0 // indirect + github.com/hashicorp/go-getter/s3/v2 v2.2.0 // indirect + github.com/hashicorp/go-getter/v2 v2.2.0 // indirect github.com/hashicorp/go-hclog v0.16.2 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect @@ -79,17 +83,18 @@ require ( go.opencensus.io v0.23.0 // indirect golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 // indirect golang.org/x/mobile v0.0.0-20210901025245-1fde1d6c3ca1 // indirect - golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 // indirect - golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f // indirect - golang.org/x/sys v0.0.0-20211019181941-9d821ace8654 // indirect - golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b // indirect - golang.org/x/text v0.3.7 // indirect + golang.org/x/net v0.8.0 // indirect + golang.org/x/oauth2 v0.1.0 // indirect + golang.org/x/sys v0.6.0 // indirect + golang.org/x/term v0.6.0 // indirect + golang.org/x/text v0.8.0 // indirect golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac // indirect - google.golang.org/api v0.56.0 // indirect + golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect + google.golang.org/api v0.101.0 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2 // indirect - google.golang.org/grpc v1.40.0 // indirect - google.golang.org/protobuf v1.27.1 // indirect + google.golang.org/genproto v0.0.0-20221027153422-115e99e71e1c // indirect + google.golang.org/grpc v1.50.1 // indirect + google.golang.org/protobuf v1.28.1 // indirect gopkg.in/square/go-jose.v2 v2.6.0 // indirect gopkg.in/yaml.v2 v2.3.0 // indirect gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect diff --git a/go.sum b/go.sum index 323d8f62..fa826ad4 100644 --- a/go.sum +++ b/go.sum @@ -1,51 +1,16 @@ bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= -cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= -cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= -cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= -cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= -cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= -cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= -cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= -cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= -cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= -cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= -cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= -cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= -cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= -cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= -cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= -cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= -cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= -cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= -cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= -cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= -cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= -cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= -cloud.google.com/go v0.94.0 h1:QDB2MZHqjTt0hGKnoEWyG/iWykue/lvkLdogLgrg10U= -cloud.google.com/go v0.94.0/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= -cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= -cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= -cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= -cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= -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/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= -cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= -cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= -cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= -cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= -cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= -cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= -cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= -cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= -cloud.google.com/go/storage v1.16.1 h1:sMEIc4wxvoY3NXG7Rn9iP7jb/2buJgWR1vNXCR/UPfs= -cloud.google.com/go/storage v1.16.1/go.mod h1:LaNorbty3ehnU3rEjXSNV/NRgQA0O8Y+uh6bPe5UOk4= -dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +cloud.google.com/go v0.105.0 h1:DNtEKRBAAzeS4KyIory52wWHuClNaXJ5x1F7xa4q+5Y= +cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM= +cloud.google.com/go/compute v1.12.1 h1:gKVJMEyqV5c/UnpzjjQbo3Rjvvqpr9B1DFSbJC4OXr0= +cloud.google.com/go/compute v1.12.1/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= +cloud.google.com/go/compute/metadata v0.1.1 h1:/sxEbyrm6cw+XOUw1YxBHlatV71z4vpnmO7z2IZ0h3I= +cloud.google.com/go/compute/metadata v0.1.1/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU= +cloud.google.com/go/iam v0.6.0 h1:nsqQC88kT5Iwlm4MeNGTpfMWddp6NB/UOLFTH6m1QfQ= +cloud.google.com/go/iam v0.6.0/go.mod h1:+1AH33ueBne5MzYccyMHtEKqLE4/kJOibtffMHDMFMc= +cloud.google.com/go/longrunning v0.1.1 h1:y50CXG4j0+qvEukslYFBCrzaXX0qpFbBzc3PchSu/LE= +cloud.google.com/go/storage v1.27.0 h1:YOO045NZI9RKfCj1c5A/ZtuuENUc8OAW+gHdGnDgyMQ= +cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s= github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= github.com/Azure/go-ntlmssp v0.0.0-20180810175552-4a21cbd618b4/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU= github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c h1:/IBSNwUN8+eKzUzbJPqhK839ygXJ82sde8x3ogr6R28= @@ -58,7 +23,6 @@ github.com/ChrisTrenkamp/goxpath v0.0.0-20210404020558-97928f7e12b6/go.mod h1:nu github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= -github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= @@ -67,7 +31,6 @@ github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRF github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/antchfx/xpath v1.1.11 h1:WOFtK8TVAjLm3lbgqeP0arlHpvCEeTANeWZ/csPpJkQ= github.com/antchfx/xquery v0.0.0-20180515051857-ad5b8c7a47b0 h1:JaCC8jz0zdMLk2m+qCCVLLLM/PL93p84w4pK3aJWj60= -github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3 h1:ZSTrOEhiM5J5RFxEaFvMZVEAM1KvT1YzbEOwB2EAGjA= github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= @@ -80,10 +43,9 @@ github.com/armon/go-metrics v0.3.9/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4 github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.30.8/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.30.27/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.40.34 h1:SBYmodndE2d4AYucuuJnOXk4MD1SFbucoIdpwKVKeSA= -github.com/aws/aws-sdk-go v1.40.34/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q= +github.com/aws/aws-sdk-go v1.44.114 h1:plIkWc/RsHr3DXBj4MEw9sEW4CcL/e2ryokc+CKyq1I= +github.com/aws/aws-sdk-go v1.44.114/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= @@ -94,18 +56,11 @@ github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4r github.com/cenkalti/backoff/v3 v3.2.2 h1:cfUAAO3yvKMYKPrvhDuHSwQnhZNk/RMHKdZqKTxfm6M= github.com/cenkalti/backoff/v3 v3.2.2/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= -github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= -github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag= github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= @@ -132,10 +87,6 @@ github.com/dylanmei/winrmtest v0.0.0-20170819153634-c2fbb09e6c08 h1:0bp6/GrNOrTD github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= -github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= -github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= @@ -145,11 +96,7 @@ github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8gVkE= github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-asn1-ber/asn1-ber v1.3.1/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0= -github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-ldap/ldap/v3 v3.1.3/go.mod h1:3rbOH3jRS2u6jg2rJnKAMLE/xQyCKIveG2Sa/Cohzb8= @@ -171,26 +118,15 @@ github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7a github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= -github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= -github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= -github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= @@ -200,60 +136,32 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c h1:964Od4U6p2jUkFxvCydnIczKteheJEzHRToSGK3Bnlw= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo= -github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ= -github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= -github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= -github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= -github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.2.1 h1:d8MncMlErDFTwQGBK1xhv026j9kqhvw1Qv9IbWT1VLQ= -github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= -github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= -github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/googleapis/gax-go/v2 v2.1.0 h1:6DWmvNpomjL1+3liNSZbVns3zsYzzCjm6pRBO1tLeso= -github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= +github.com/googleapis/enterprise-certificate-proxy v0.2.0 h1:y8Yozv7SZtlU//QXbezB6QkpuE6jMD2/gfzk4AftXjs= +github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg= +github.com/googleapis/gax-go/v2 v2.6.0 h1:SXk3ABtQYDT/OH8jAyvEOQ58mgawq5C4o/4/89qN2ZU= +github.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY= github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= -github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/hashicorp/consul/api v1.10.1 h1:MwZJp86nlnL+6+W1Zly4JUuVn9YHhMggBirMpHGD7kw= github.com/hashicorp/consul/api v1.10.1/go.mod h1:XjsvQN+RJGWI2TWy1/kqaE16HrR2J/FWgkYjdZQsX9M= github.com/hashicorp/consul/sdk v0.8.0 h1:OJtKBtEjboEZvG6AOUdh4Z1Zbyu0WcxQ0qatRrZHTVU= @@ -265,12 +173,12 @@ github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtng github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= -github.com/hashicorp/go-getter/gcs/v2 v2.1.0 h1:1S1hvWgHrhUihP/Y4FVbjCWwE7EwxpksKoRcC7g+Hgs= -github.com/hashicorp/go-getter/gcs/v2 v2.1.0/go.mod h1:dVyTnX1BynHAjbumB4Pk14GoJ+v3VbDUJtbI7G0oOlU= -github.com/hashicorp/go-getter/s3/v2 v2.1.0 h1:8uwuP97zEQ7y7H4bLzRqiN4T8vmpXeJthigqSEjX+08= -github.com/hashicorp/go-getter/s3/v2 v2.1.0/go.mod h1:rwzJPQaBuc5riYOucPx84DOE74xIhKENOWgBjK3XVEs= -github.com/hashicorp/go-getter/v2 v2.1.0 h1:MsLbi7yFKGFPVmpK+un4/k5HFry0tqvo9JppsCmIutU= -github.com/hashicorp/go-getter/v2 v2.1.0/go.mod h1:w65fE5glbccYjndAuj1kA5lnVBGZYEaH0e5qA1kpIks= +github.com/hashicorp/go-getter/gcs/v2 v2.2.0 h1:oo6LVXva9I4CZzv531mn/FY5gtRx540I6eWwJVPWA4o= +github.com/hashicorp/go-getter/gcs/v2 v2.2.0/go.mod h1:oDHNhZN2Gf6UqfIol4S9PkbzMFlf8rBctrJvAHDTtOM= +github.com/hashicorp/go-getter/s3/v2 v2.2.0 h1:JGZihrdkZnuw+bDf8BnxuRLPwi0cfL2mwRlWA2lREAg= +github.com/hashicorp/go-getter/s3/v2 v2.2.0/go.mod h1:hj0uM2nGIi0rln/VcvxjaQYQg3WGssfUh/ya5jA555g= +github.com/hashicorp/go-getter/v2 v2.2.0 h1:vLenCsJqB5oNE141xKtT6cajhwAE8dneiNgzZA3oOqs= +github.com/hashicorp/go-getter/v2 v2.2.0/go.mod h1:EcJx6oZE8hmGuRR1l38QrfnyiujQbwsEAn11eHv6l2M= github.com/hashicorp/go-hclog v0.0.0-20180709165350-ff2cf002a8dd/go.mod h1:9bjs9uLqI8l75knNv3lV1kA55veR+WUPSiKIWcQHudI= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= github.com/hashicorp/go-hclog v0.12.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= @@ -310,8 +218,8 @@ github.com/hashicorp/go-uuid v1.0.2 h1:cfejS+Tpcp13yd5nYHWDI6qVCny6wyX2Mt5SGur2I github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-version v1.1.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.3.0 h1:McDWVJIU/y+u1BRV06dPaLfLCaT7fUTJLp5r04x7iNw= -github.com/hashicorp/go-version v1.3.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= +github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.3/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= @@ -325,8 +233,8 @@ github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/memberlist v0.2.2 h1:5+RffWKwqJ71YPu9mWsF7ZOscZmwfasdA8kbdC7AO2g= github.com/hashicorp/memberlist v0.2.2/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= -github.com/hashicorp/packer-plugin-sdk v0.3.4 h1:fmcHQtCGVa4tY2zeu/UffUHz0f3Y5RYc0OgR4XWf5oA= -github.com/hashicorp/packer-plugin-sdk v0.3.4/go.mod h1:XZRvL9kRqJJtB6rf9Lu2zWLJbf2/4ImWXDjp9O9UQGE= +github.com/hashicorp/packer-plugin-sdk v0.4.0 h1:UyLYe0y02D9wkOQ3FeeZWyFg2+mx2vLuWRGUL5xt50I= +github.com/hashicorp/packer-plugin-sdk v0.4.0/go.mod h1:uNhU3pmjM2ejgHYce/g4J+sa5rh81iYQztpGvGa5FOs= github.com/hashicorp/serf v0.9.5 h1:EBWvyu9tcRszt3Bxp3KNssBMP1KuHWyO51lz9+786iM= github.com/hashicorp/serf v0.9.5/go.mod h1:UWDWwZeL5cuWDJdl0C6wrvrUwEqtQ4ZKBKKENpqIUyk= github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE= @@ -339,8 +247,6 @@ github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKe github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493 h1:brI5vBRUlAlM34VFmnLPwjnCL/FxAJp9XvOdX6Zt+XE= github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869 h1:IPJ3dvxmJ4uczJe5YQdrYB16oTJlGSC/OyZDqUk9xX4= github.com/jehiah/go-strftime v0.0.0-20171201141054-1d33003b3869/go.mod h1:cJ6Cj7dQo+O6GJNiMx+Pa94qKj+TG8ONdKHgMNIyyag= @@ -352,8 +258,6 @@ github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGw github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= -github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= @@ -401,7 +305,6 @@ github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXx github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff h1:bFJ74ac7ZK/jyislqiWdzrnENesFt43sNEBRh1xk/+g= github.com/mitchellh/go-fs v0.0.0-20180402235330-b7b9ca407fff/go.mod h1:g7SZj7ABpStq3tM4zqHiVEG5un/DZ1+qJJKO7qx1EvU= -github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-testing-interface v0.0.0-20171004221916-a61a99592b77/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= @@ -475,8 +378,6 @@ github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= -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/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= @@ -488,7 +389,6 @@ github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvH github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= @@ -506,28 +406,17 @@ github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqri github.com/ugorji/go v1.2.6/go.mod h1:anCg0y61KIhDlPZmnH+so+RQbysYVyDko0IMgJv0Nn0= github.com/ugorji/go/codec v1.2.6 h1:7kbGefxLoDBuYXOms4yD7223OpNMMPNPZxXk5TvFcyQ= github.com/ugorji/go/codec v1.2.6/go.mod h1:V6TCNZ4PHqoHGFZuSG1W8nrCzzdgA2DozYxWFFpvxTw= -github.com/ulikunitz/xz v0.5.8/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/ulikunitz/xz v0.5.10 h1:t92gobL9l3HE202wg3rlk19F6X+JOxl9BBrCCMYEYd8= github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= -github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zclconf/go-cty v1.10.0 h1:mp9ZXQeIcN8kAwuqorjH+Q+njbJKjLrvB2yIh4q7U+0= github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= -go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= -go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= -go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -536,7 +425,6 @@ golang.org/x/crypto v0.0.0-20190222235706-ffb98f73852f/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190418165655-df01cb2cc480/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= @@ -545,42 +433,17 @@ golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 h1:O8uGbHCqlTp2P6QJSLmCojM4mN6UemYv8K+dCnmHmu0= golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= golang.org/x/exp v0.0.0-20190731235908-ec7cb31e5a56/go.mod h1:JhuoJpWY28nO4Vef9tZUw9qufEGTyX1+7lmHxV5q5G4= -golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= -golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= -golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= -golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= -golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= -golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mobile v0.0.0-20210901025245-1fde1d6c3ca1 h1:t3ZHqovedSY8DEAUmZA99fPJhUhOb176PLACYA1sJ8Y= golang.org/x/mobile v0.0.0-20210901025245-1fde1d6c3ca1/go.mod h1:jFTmtFYCV0MFtXBU+J5V/+5AUeVS0ON/0WkE/KSrl6E= -golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= -golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -588,75 +451,36 @@ golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/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-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f h1:Qmd2pbz05z7z6lm0DrgQVVPuBm92jqujBKMHMOlOQEw= -golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.1.0 h1:isLCZuhj4v+tYv7eskaN4v/TM+A1begWWgyVJDdl1+Y= +golang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A= 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= golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -666,78 +490,43 @@ golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20190129075346-302c3dd5f1cc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190922100055-0a153f010e69/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211019181941-9d821ace8654 h1:id054HUawV2/6IGm2IV8KZQjqtwAOo2CYlOToYqa0d0= -golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b h1:9zKuko04nR4gjZ4+DNjHqRlAJqbJETHwiNKDqTfOjfE= -golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.6.0 h1:clScbb1cHjoCkyRbWwBEUZ5H/tIFu5TAXIqaZD0Gcjw= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac h1:7zkz7BUtwNFFqcowJ+RIgu2MaV/MapERkDIy+mwPyjs= golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -748,183 +537,44 @@ golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= -golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= -golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= -golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= -google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= -google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.21.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= -google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= -google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= -google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= -google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= -google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= -google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= -google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= -google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= -google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= -google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= -google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= -google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= -google.golang.org/api v0.56.0 h1:08F9XVYTLOGeSQb3xI9C0gXMuQanhdGed0cWFhDozbI= -google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= +golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= +golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +google.golang.org/api v0.101.0 h1:lJPPeEBIRxGpGLwnBTam1NPEM8Z2BmmXEd3z812pjwM= +google.golang.org/api v0.101.0/go.mod h1:CjxAAWWt3A3VrUE2IGDY2bgK5qhoG/OkyWVlYcP05MY= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= -google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= -google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= -google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= -google.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= -google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= -google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= -google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210825212027-de86158e7fda/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2 h1:NHN4wOCScVzKhPenJ2dt+BTs3X/XkBVI/Rh4iDt55T8= -google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20221027153422-115e99e71e1c h1:QgY/XxIAIeccR+Ca/rDdKubLIU9rcJ3xfy1DC/Wd2Oo= +google.golang.org/genproto v0.0.0-20221027153422-115e99e71e1c/go.mod h1:CGI5F/G+E5bKwmfYo09AXuVN4dD894kIKUFmVbP2/Fo= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= -google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.22.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= -google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= -google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= -google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.40.0 h1:AGJ0Ih4mHjSeibYkFGh1dD9KJ/eOtZ93I6hoHhukQ5Q= -google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= +google.golang.org/grpc v1.50.1 h1:DS/BukOZWp8s6p4Dt/tOaJaTQyPyOoCcrjroHuCeLzY= +google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -933,19 +583,17 @@ google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzi google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.27.1 h1:SnqbnDw1V7RiZcXPx5MEeqPv2s79L9i7BJUlG/+RurQ= -google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w= +google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= @@ -955,7 +603,6 @@ gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76 gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -967,12 +614,4 @@ gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= -rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= -rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= From dbd7f53cef28b5034161cf312322363622ed2048 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:08:28 -0400 Subject: [PATCH 068/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 19863ec6..7a63e3d9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -26,7 +26,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: 'Determine Go version' id: get-go-version run: | @@ -38,7 +38,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Unshallow run: git fetch --prune --unshallow - name: Set up Go From 3f1578e5a9fc1c83192a82c2fdcd6bfeedbf350e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:11:36 -0400 Subject: [PATCH 069/111] Managed by Terraform: Update config.yml github workflow --- .github/workflows/build_plugin_binaries.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build_plugin_binaries.yml b/.github/workflows/build_plugin_binaries.yml index 63fb21a5..b87f3efb 100644 --- a/.github/workflows/build_plugin_binaries.yml +++ b/.github/workflows/build_plugin_binaries.yml @@ -17,7 +17,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: darwin @@ -34,7 +34,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: freebsd @@ -55,7 +55,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: linux @@ -80,7 +80,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: netbsd @@ -101,7 +101,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: openbsd @@ -122,7 +122,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: solaris @@ -135,7 +135,7 @@ jobs: container: image: docker.mirror.hashicorp.services/cimg/go:1.18 steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" with: GOOS: windows From abb7d49ef0d8d12148d06a1d8481ee26d41b11fc Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:11:38 -0400 Subject: [PATCH 070/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 3d632d58..974625f4 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -22,7 +22,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: 'Determine Go version' id: get-go-version run: | @@ -34,7 +34,7 @@ jobs: runs-on: ubuntu-latest name: Go Mod Tidy steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} @@ -45,7 +45,7 @@ jobs: runs-on: ubuntu-latest name: Lint check steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} @@ -59,7 +59,7 @@ jobs: runs-on: ubuntu-latest name: Gofmt check steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} @@ -77,7 +77,7 @@ jobs: runs-on: ubuntu-latest name: Generate check steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} From 6b69ef07897178cd1f81ab25e491fd3f5d6fd6ba Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:11:48 -0400 Subject: [PATCH 071/111] Managed by Terraform: Update build-and-persist-plugin-binary github action --- .github/actions/build-and-persist-plugin-binary/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/build-and-persist-plugin-binary/action.yml b/.github/actions/build-and-persist-plugin-binary/action.yml index 96b71eca..56e26403 100644 --- a/.github/actions/build-and-persist-plugin-binary/action.yml +++ b/.github/actions/build-and-persist-plugin-binary/action.yml @@ -10,7 +10,7 @@ inputs: runs: using: composite steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - run: "GOOS=${{ inputs.GOOS }} GOARCH=${{ inputs.GOARCH }} go build -o ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }} ." shell: bash - run: zip ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }}.zip ./pkg/packer_plugin_vagrant_${{ inputs.GOOS }}_${{ inputs.GOARCH }} From 760e2aec542c1f7a5ba0a227d407f9bcc2c1fd83 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:14:40 -0400 Subject: [PATCH 072/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index cd23a4c4..30bf6c40 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -23,7 +23,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: 'Determine Go version' id: get-go-version run: | @@ -35,7 +35,7 @@ jobs: runs-on: macos-latest name: Darwin Go tests steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} From f8de1f5d621d57398fabb0f423ed6f26de48db89 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:14:43 -0400 Subject: [PATCH 073/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index caca3eb2..a0ed1f00 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -23,7 +23,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: 'Determine Go version' id: get-go-version run: | @@ -35,7 +35,7 @@ jobs: runs-on: windows-latest name: Windows Go tests steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} From 145b067eded6897fe49e63cef4785ede5496737e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 25 Apr 2023 17:14:53 -0400 Subject: [PATCH 074/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index b6c16a8c..00fb01e0 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -23,7 +23,7 @@ jobs: outputs: go-version: ${{ steps.get-go-version.outputs.go-version }} steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: 'Determine Go version' id: get-go-version run: | @@ -35,7 +35,7 @@ jobs: runs-on: ubuntu-latest name: Linux Go tests steps: - - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} From 968a5f0f20d67cbe5791c59255bcc6367a5d8ae4 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 28 Apr 2023 16:19:18 -0400 Subject: [PATCH 075/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 974625f4..c4bcce80 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -84,3 +84,6 @@ jobs: - run: | export PATH=$PATH:$(go env GOPATH)/bin make generate + git diff --exit-code || ( echo "Found diffs in generated code" \ + && echo "You can use the command: \`make generate\` to reformat code." \ + && false ) From c6169cd9943967d60ad351bbdc1c6a61c31562b1 Mon Sep 17 00:00:00 2001 From: ChristoWolf Date: Thu, 18 May 2023 09:53:01 +0200 Subject: [PATCH 076/111] fix, style: fixed dead links and improved Markdown formatting --- .github/ISSUE_TEMPLATE/question.md | 8 ++-- README.md | 15 +++--- .../builder/vagrant/Config-not-required.mdx | 2 +- .../builder/vagrant/Config-required.mdx | 2 +- docs/README.md | 6 ++- docs/builders/vagrant.mdx | 6 +-- docs/post-processors/vagrant-cloud.mdx | 47 +++++++++---------- docs/post-processors/vagrant.mdx | 14 +++--- 8 files changed, 48 insertions(+), 52 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/question.md b/.github/ISSUE_TEMPLATE/question.md index 83a7fd0e..58b8ec0f 100644 --- a/.github/ISSUE_TEMPLATE/question.md +++ b/.github/ISSUE_TEMPLATE/question.md @@ -8,8 +8,8 @@ Issues on GitHub are intended to be related to bugs or feature requests, so we recommend using our other community resources instead of asking here if you have a question. -- Packer Guides: https://www.packer.io/guides -- Discussion List: https://groups.google.com/group/packer-tool +- Packer Guides: +- Discussion List: - Any other questions can be sent to the packer section of the HashiCorp - forum: https://discuss.hashicorp.com/c/packer -- Packer community links: https://www.packer.io/community + forum: +- Packer community links: diff --git a/README.md b/README.md index 5d8ba7ad..767400fe 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Packer Plugin Vagrant + The `Vagrant` multi-component plugin can be used with HashiCorp [Packer](https://www.packer.io) to create custom images. For the full list of available features for this plugin see [docs](docs). @@ -10,10 +11,10 @@ to create custom images. For the full list of available features for this plugin Starting from version 1.7, Packer supports a new `packer init` command allowing automatic installation of Packer plugins. Read the -[Packer documentation](https://www.packer.io/docs/commands/init) for more information. +[Packer documentation](https://developer.hashicorp.com/packer/docs/commands/init) for more information. -To install this plugin, copy and paste this code into your Packer configuration . -Then, run [`packer init`](https://www.packer.io/docs/commands/init). +To install this plugin, copy and paste this code into your Packer configuration. +Then, run [`packer init`](https://developer.hashicorp.com/packer/docs/commands/init). ```hcl packer { @@ -26,15 +27,13 @@ packer { } ``` - #### Manual installation You can find pre-built binary releases of the plugin [here](https://github.com/hashicorp/packer-plugin-vagrant/releases). Once you have downloaded the latest archive corresponding to your target OS, uncompress it to retrieve the plugin binary file corresponding to your platform. To install the plugin, please follow the Packer documentation on -[installing a plugin](https://www.packer.io/docs/extending/plugins/#installing-plugins). - +[installing a plugin](https://developer.hashicorp.com/packer/docs/plugins/install-plugins). ### From Sources @@ -43,15 +42,13 @@ locally and run the command `go build` from the root directory. Upon successful compilation, a `packer-plugin-vagrant` plugin binary file can be found in the root directory. To install the compiled plugin, please follow the official Packer documentation -on [installing a plugin](https://www.packer.io/docs/extending/plugins/#installing-plugins). - +on [installing a plugin](https://developer.hashicorp.com/packer/docs/plugins/install-plugins). ### Configuration For more information on how to configure the plugin, please read the documentation located in the [`docs/`](docs) directory. - ## Contributing * If you think you've found a bug in the code or you have a question regarding diff --git a/docs-partials/builder/vagrant/Config-not-required.mdx b/docs-partials/builder/vagrant/Config-not-required.mdx index 0bc8c25e..cfe471fc 100644 --- a/docs-partials/builder/vagrant/Config-not-required.mdx +++ b/docs-partials/builder/vagrant/Config-not-required.mdx @@ -86,7 +86,7 @@ - `output_vagrantfile` (string) - Output Vagrantfile - `package_include` ([]string) - Equivalent to setting the - [`--include`](https://www.vagrantup.com/docs/cli/package.html#include-x-y-z) option + [`--include`](https://developer.hashicorp.com/vagrant/docs/cli/package#include-x-y-z) option in `vagrant package`; defaults to unset diff --git a/docs-partials/builder/vagrant/Config-required.mdx b/docs-partials/builder/vagrant/Config-required.mdx index b67058f3..1a20a83d 100644 --- a/docs-partials/builder/vagrant/Config-required.mdx +++ b/docs-partials/builder/vagrant/Config-required.mdx @@ -1,7 +1,7 @@ - `source_path` (string) - URL of the vagrant box to use, or the name of the vagrant box. - hashicorp/precise64, ./mylocalbox.box and https://example.com/my-box.box + hashicorp/precise64, ./mylocalbox.box and are all valid source boxes. If your source is a .box file, whether locally or from a URL like the latter example above, you will also need to provide a box_name. This option is required, unless you set diff --git a/docs/README.md b/docs/README.md index 9af809a8..d7205cc9 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,6 +2,8 @@ The Vagrant plugin integrates Packer with HashiCorp [Vagrant](https://www.vagrantup.com/), allowing you to use Packer to create development boxes. -- [builder](/docs/builders/vagrant.mdx) - The Vagrant builder is intended for building new boxes from already-existing boxes. +- [vagrant builder](/docs/builders/vagrant.mdx) - The Vagrant builder is intended for building new boxes from already-existing boxes. -- [post-processor](/docs/post-processors/vagrant.mdx) - The Packer Vagrant post-processor takes a build and converts the artifact into a valid Vagrant box. \ No newline at end of file +- [vagrant post-processor](/docs/post-processors/vagrant.mdx) - The Packer Vagrant post-processor takes a build and converts the artifact into a valid Vagrant box. + +- [vagrant-cloud post-processor](/docs/post-processors/vagrant-cloud.mdx) - The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. diff --git a/docs/builders/vagrant.mdx b/docs/builders/vagrant.mdx index 43adf05f..fec91707 100644 --- a/docs/builders/vagrant.mdx +++ b/docs/builders/vagrant.mdx @@ -33,14 +33,14 @@ rather than initializing a new Vagrant workspace, you use an already defined one, by using `global_id` instead of `source_box`. Please note that if you are using the Vagrant builder, then the Vagrant -post-processor is unnecesary because the output of the Vagrant builder is +post-processor is unnecessary because the output of the Vagrant builder is already a Vagrant box; using that post-processor with the Vagrant builder will cause your build to fail. Similarly, since Vagrant boxes are already compressed, the Compress post-processor will not work with this builder. ## Configuration Reference -### Required: +### Required - `source_path` (string) - URL of the vagrant box to use, or the name of the vagrant box. `hashicorp/precise64`, `./mylocalbox.box` and @@ -59,7 +59,7 @@ the Compress post-processor will not work with this builder. `source_box`, Packer will skip the Vagrant initialize and add steps, and simply launch the box directly using the global id. -### Optional: +### Optional @include 'builder/vagrant/Config-not-required.mdx' diff --git a/docs/post-processors/vagrant-cloud.mdx b/docs/post-processors/vagrant-cloud.mdx index 0bbd657e..3050bf14 100644 --- a/docs/post-processors/vagrant-cloud.mdx +++ b/docs/post-processors/vagrant-cloud.mdx @@ -17,13 +17,12 @@ simple way. The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. Currently, the Vagrant Cloud post-processor will accept and upload boxes -supplied to it from the [Vagrant](/packer/plugins/post-processors/vagrant/vagrant) or -[Artifice](/packer/docs/post-processors/artifice) post-processors and the -[Vagrant](/packer/plugins/builders/vagrant/vagrant) builder. +supplied to it from the [Vagrant](/docs/post-processors/vagrant.mdx) or +[Artifice](https://developer.hashicorp.com/packer/docs/post-processors/artifice) post-processors and the +[Vagrant](/docs/builders/vagrant.mdx) builder. You'll need to be familiar with Vagrant Cloud, have an upgraded account to -enable box hosting, and be distributing your box via the [shorthand -name](https://docs.vagrantup.com/v2/cli/box.html) configuration. +enable box hosting, and be distributing your box via the [shorthand name](https://docs.vagrantup.com/v2/cli/box.html) configuration. ## Workflow @@ -36,21 +35,21 @@ and deliver them to your team in some fashion. Here is an example workflow: -1. You use Packer to build a Vagrant Box for the `virtualbox` provider -2. The `vagrant-cloud` post-processor is configured to point to the box +1. You use Packer to build a Vagrant Box for the `virtualbox` provider +2. The `vagrant-cloud` post-processor is configured to point to the box `hashicorp/foobar` on Vagrant Cloud via the `box_tag` configuration -3. The post-processor receives the box from the `vagrant` post-processor -4. It then creates the configured version, or verifies the existence of it, on +3. The post-processor receives the box from the `vagrant` post-processor +4. It then creates the configured version, or verifies the existence of it, on Vagrant Cloud -5. A provider matching the name of the Vagrant provider is then created -6. The box is uploaded to Vagrant Cloud -7. The upload is verified -8. The version is released and available to users of the box +5. A provider matching the name of the Vagrant provider is then created +6. The box is uploaded to Vagrant Cloud +7. The upload is verified +8. The version is released and available to users of the box ~> The Vagrant Cloud box (`hashicorp/foobar` in this example) must already exist. Packer will not create the box automatically. If running Packer in automation, consider using the -[Vagrant Cloud API](https://www.vagrantup.com/docs/vagrant-cloud/api.html) +[Vagrant Cloud API](https://www.vagrantup.com/docs/vagrant-cloud/api) to create the Vagrant Cloud box if it doesn't already exist. ## Configuration @@ -58,7 +57,7 @@ to create the Vagrant Cloud box if it doesn't already exist. The configuration allows you to specify the target box that you have access to on Vagrant Cloud, as well as authentication and version information. -### Required: +### Required - `box_tag` (string) - The shorthand tag for your box that maps to Vagrant Cloud, for example `hashicorp/precise64`, which is short for @@ -87,7 +86,7 @@ on Vagrant Cloud, as well as authentication and version information. other than the default then `access_token` can be left blank and no `Authorization` header will be added to requests sent by this post-processor. -### Optional: +### Optional - `no_release` (string) - If set to true, does not release the version on Vagrant Cloud, making it active. You can manually release the version via @@ -106,10 +105,10 @@ on Vagrant Cloud, as well as authentication and version information. full-length and in-depth description of the version, typically for denoting changes introduced -- `box_download_url` (string) - Optional URL for a self-hosted box. If this - is set the box will not be uploaded to the Vagrant Cloud. - This is a [template engine](/packer/docs/templates/legacy_json_templates/engine). Therefore, you - may use user variables and template functions in this field. +- `box_download_url` (string) - Optional URL for a self-hosted box. + If this is set the box will not be uploaded to the Vagrant Cloud. + This is a [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine). + Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: - `Provider`: The Vagrant provider the box is for @@ -123,15 +122,15 @@ on Vagrant Cloud, as well as authentication and version information. - "sha1:{$checksum}" - "sha256:{$checksum}" - "sha512:{$checksum}" - See https://www.vagrantup.com/vagrant-cloud/api#arguments-7 + See - `no_direct_upload` (boolean) - When `true`, upload the box artifact through Vagrant Cloud instead of directly to the backend storage. ## Use with the Vagrant Post-Processor -An example configuration is shown below. Note the use of the [post-processors](https://www.packer.io/docs/templates/hcl_templates/blocks/build/post-processors) -block that wraps both the Vagrant and Vagrant Cloud [post-processor](https://www.packer.io/docs/templates/hcl_templates/blocks/build/post-processor) blocks within the post-processor section. Chaining +An example configuration is shown below. Note the use of the [post-processors](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processors) +block that wraps both the Vagrant and Vagrant Cloud [post-processor](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processors) blocks within the post-processor section. Chaining the post-processors together in this way tells Packer that the artifact produced by the Vagrant post-processor should be passed directly to the Vagrant Cloud Post-Processor. It also sets the order in which the post-processors @@ -289,5 +288,3 @@ build { - - diff --git a/docs/post-processors/vagrant.mdx b/docs/post-processors/vagrant.mdx index 4b3d5137..a772617b 100644 --- a/docs/post-processors/vagrant.mdx +++ b/docs/post-processors/vagrant.mdx @@ -23,11 +23,11 @@ Packer to automatically create arbitrarily complex Vagrant boxes, and is in fact how the official boxes distributed by Vagrant are created. If you've never used a post-processor before, please read the documentation on -[using post-processors](/packer/docs/templates/legacy_json_templates/post-processors) in templates. +[using post-processors](https://developer.hashicorp.com/packer/docs/post-processors). This knowledge will be expected for the remainder of this document. Because Vagrant boxes are -[provider-specific](https://www.vagrantup.com/docs/boxes/format), the +[provider-specific](https://developer.hashicorp.com/vagrant/docs/boxes/format), the Vagrant post-processor is hardcoded to understand how to convert the artifacts of certain builders into proper boxes for their respective providers. @@ -83,7 +83,7 @@ more details about certain options in following sections. - `output` (string) - The full path to the box file that will be created by this post-processor. This is a - [template engine](/packer/docs/templates/legacy_json_templates/engine). Therefore, you may use user + [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine). Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: @@ -102,8 +102,8 @@ more details about certain options in following sections. `lxc`, `scaleway`, `hyperv`, `parallels`, `aws`, or `google`. - `vagrantfile_template` (string) - Path to a template to use for the - Vagrantfile that is packaged with the box. This option supports the usage of the [template engine](/packer/docs/templates/legacy_json_templates/engine) - for JSON and the [contextual variables](/packer/docs/templates/hcl_templates/contextual-variables) for HCL2. + Vagrantfile that is packaged with the box. This option supports the usage of the [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine) + for JSON and the [contextual variables](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/contextual-variables) for HCL2. - `vagrantfile_template_generated` (boolean) - By default, Packer will exit with an error if the file specified using the @@ -240,8 +240,8 @@ want the final Vagrant box as the result. If you wish to keep the input artifact (the raw virtual machine, for example), then you must configure Packer to keep it. -Please see the [documentation on input -artifacts](/packer/docs/templates/legacy_json_templates/post-processors#input-artifacts) for more information. +Please see the [documentation on input artifacts](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/post-processors#input-artifacts) +for more information. ### Docker From f21234ffae9cc7ead0d385b9af8443304ede341d Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Fri, 26 May 2023 13:43:11 -0400 Subject: [PATCH 077/111] github: remove test-plugin-example workflow --- .github/workflows/test-plugin-example.yml | 47 ----------------------- 1 file changed, 47 deletions(-) delete mode 100644 .github/workflows/test-plugin-example.yml diff --git a/.github/workflows/test-plugin-example.yml b/.github/workflows/test-plugin-example.yml deleted file mode 100644 index 2f0eae17..00000000 --- a/.github/workflows/test-plugin-example.yml +++ /dev/null @@ -1,47 +0,0 @@ -# This is a manually triggered action workflow. -# It uses Packer at latest version to init, validate and build -# an example configuration in a folder. -# This action is compatible with Packer v1.7.0 or later. -name: test plugin example - -on: - workflow_dispatch: - inputs: - logs: - description: 'Set 1 to activate full logs' - required: false - default: '0' - folder: - description: 'Example folder' - required: false - default: './example' - -jobs: - build: - runs-on: ubuntu-latest - name: init and build example - steps: - - name: Checkout Repository - uses: actions/checkout@v2 - - - name: Init - uses: hashicorp/packer-github-actions@master - with: - working_directory: ${{ github.event.inputs.folder }} - command: init - - - name: Validate - uses: hashicorp/packer-github-actions@master - with: - working_directory: ${{ github.event.inputs.folder }} - command: validate - env: - PACKER_LOG: ${{ github.event.inputs.logs }} - - - name: Build - uses: hashicorp/packer-github-actions@master - with: - working_directory: ${{ github.event.inputs.folder }} - command: build - env: - PACKER_LOG: ${{ github.event.inputs.logs }} \ No newline at end of file From 2f25ae2c1bbdadf6f3385fc9683e25e7edb966b3 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 13 Jun 2023 13:37:56 -0400 Subject: [PATCH 078/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7a63e3d9..8c0734f4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,7 +54,7 @@ jobs: uses: goreleaser/goreleaser-action@f82d6c1c344bcacabba2c841718984797f664a6b # v4.2.0 with: version: latest - args: release --rm-dist + args: release --clean --timeout 120m env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} API_VERSION: ${{ steps.plugin_describe.outputs.api_version }} From 45cf4ca816c6583488b2dedc6853290d7d8e4823 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 22 Jun 2023 13:08:04 -0400 Subject: [PATCH 079/111] Update comments to properly generated doc fixes --- builder/vagrant/builder.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/builder/vagrant/builder.go b/builder/vagrant/builder.go index 01359a0e..e9389c74 100644 --- a/builder/vagrant/builder.go +++ b/builder/vagrant/builder.go @@ -45,7 +45,7 @@ type Config struct { // collisions. If unset, it will be set to packer- plus your buildname. OutputDir string `mapstructure:"output_dir" required:"false"` // URL of the vagrant box to use, or the name of the vagrant box. - // hashicorp/precise64, ./mylocalbox.box and https://example.com/my-box.box + // hashicorp/precise64, ./mylocalbox.box and // are all valid source boxes. If your source is a .box file, whether // locally or from a URL like the latter example above, you will also need // to provide a box_name. This option is required, unless you set @@ -142,7 +142,7 @@ type Config struct { SkipPackage bool `mapstructure:"skip_package" required:"false"` OutputVagrantfile string `mapstructure:"output_vagrantfile"` // Equivalent to setting the - // [`--include`](https://www.vagrantup.com/docs/cli/package.html#include-x-y-z) option + // [`--include`](https://developer.hashicorp.com/vagrant/docs/cli/package#include-x-y-z) option // in `vagrant package`; defaults to unset PackageInclude []string `mapstructure:"package_include"` From e7b03e1128add975572a8faf1822c97d78fa1adf Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 1 Aug 2023 16:46:28 -0400 Subject: [PATCH 080/111] Managed by Terraform: Add CONTRIBUTING.md issue template --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 8498edc9..bed0198e 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -66,7 +66,7 @@ runtime in order to build packer with the Vagrant plugin. 1. This project always releases from the latest version of golang. [Install go](https://golang.org/doc/install#install) To properly build from -source, you need to have golang >= 1.18 +source, you need to have golang >= 1.19 ## Setting up Vagrant plugin for dev From ac5cc0bbb6e0c4c5e1b70db1a918d890cb9937ce Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 1 Aug 2023 16:47:58 -0400 Subject: [PATCH 081/111] Managed by Terraform: Update config.yml github workflow --- .github/workflows/build_plugin_binaries.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build_plugin_binaries.yml b/.github/workflows/build_plugin_binaries.yml index b87f3efb..681dae90 100644 --- a/.github/workflows/build_plugin_binaries.yml +++ b/.github/workflows/build_plugin_binaries.yml @@ -15,7 +15,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -32,7 +32,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -53,7 +53,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -78,7 +78,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -99,7 +99,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -120,7 +120,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" @@ -133,7 +133,7 @@ jobs: working-directory: ~/go/src/github.com/hashicorp/packer-plugin-vagrant runs-on: ubuntu-latest container: - image: docker.mirror.hashicorp.services/cimg/go:1.18 + image: docker.mirror.hashicorp.services/cimg/go:1.19 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - uses: "./.github/actions/build-and-persist-plugin-binary" From a05c1e93c73f9a98a11e0347ab39001a7df91d5e Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 1 Aug 2023 16:48:00 -0400 Subject: [PATCH 082/111] Managed by Terraform: Update go-version config --- .go-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.go-version b/.go-version index a63f36d9..3e5f0a11 100644 --- a/.go-version +++ b/.go-version @@ -1,2 +1,2 @@ -1.18.8 +1.19.12 From 94af25123a134f7008310d64b1090c7c71471a2f Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Aug 2023 09:33:49 -0400 Subject: [PATCH 083/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index c4bcce80..210ff848 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -49,9 +49,9 @@ jobs: - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - - uses: golangci/golangci-lint-action@08e2f20817b15149a52b5b3ebe7de50aff2ba8c5 # v3.4.0 + - uses: golangci/golangci-lint-action@639cd343e1d3b897ff35927a75193d57cfcba299 # v3.6.0 with: - version: v1.47.3 + version: v1.53.3 only-new-issues: true check-fmt: needs: From 93e2bc1f16d05c5716f70ce8dc0d6fa9c1fad828 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet <105649352+lbajolet-hashicorp@users.noreply.github.com> Date: Wed, 2 Aug 2023 11:37:49 -0400 Subject: [PATCH 084/111] bump go 1.18 to 1.19 (#94) * go.mod: bump go version from 1.18 to 1.19 * go: lint all go files --- go.mod | 2 +- post-processor/vagrant/libvirt.go | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/go.mod b/go.mod index 53ca9f09..72ab3bca 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/hashicorp/packer-plugin-vagrant -go 1.18 +go 1.19 require ( github.com/hashicorp/go-version v1.6.0 diff --git a/post-processor/vagrant/libvirt.go b/post-processor/vagrant/libvirt.go index 49459d99..82dcb18c 100644 --- a/post-processor/vagrant/libvirt.go +++ b/post-processor/vagrant/libvirt.go @@ -20,13 +20,13 @@ func lower(c byte) byte { // // Valid units (case-insensitive): // -// B (byte) 1B -// K (kilobyte) 1024B -// M (megabyte) 1024K -// G (gigabyte) 1024M -// T (terabyte) 1024G -// P (petabyte) 1024T -// E (exabyte) 1024P +// B (byte) 1B +// K (kilobyte) 1024B +// M (megabyte) 1024K +// G (gigabyte) 1024M +// T (terabyte) 1024G +// P (petabyte) 1024T +// E (exabyte) 1024P // // The default is M. func sizeInMegabytes(size string) uint64 { From 54e4ef19fc667e39f13a9630518fc858898db61e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 15:47:35 +0000 Subject: [PATCH 085/111] Bump github.com/hashicorp/packer-plugin-sdk from 0.4.0 to 0.5.1 Bumps [github.com/hashicorp/packer-plugin-sdk](https://github.com/hashicorp/packer-plugin-sdk) from 0.4.0 to 0.5.1. - [Release notes](https://github.com/hashicorp/packer-plugin-sdk/releases) - [Changelog](https://github.com/hashicorp/packer-plugin-sdk/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/packer-plugin-sdk/compare/v0.4.0...v0.5.1) --- updated-dependencies: - dependency-name: github.com/hashicorp/packer-plugin-sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 6 +++--- go.sum | 18 ++++++------------ 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/go.mod b/go.mod index 72ab3bca..e2ce30e2 100644 --- a/go.mod +++ b/go.mod @@ -4,12 +4,12 @@ go 1.19 require ( github.com/hashicorp/go-version v1.6.0 - github.com/hashicorp/hcl/v2 v2.13.0 - github.com/hashicorp/packer-plugin-sdk v0.4.0 + github.com/hashicorp/hcl/v2 v2.16.2 + github.com/hashicorp/packer-plugin-sdk v0.5.1 github.com/klauspost/pgzip v0.0.0-20151221113845-47f36e165cec github.com/mitchellh/mapstructure v1.4.1 github.com/stretchr/testify v1.7.0 - github.com/zclconf/go-cty v1.10.0 + github.com/zclconf/go-cty v1.12.1 ) require ( diff --git a/go.sum b/go.sum index fa826ad4..c4f36046 100644 --- a/go.sum +++ b/go.sum @@ -126,7 +126,6 @@ github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= @@ -227,14 +226,14 @@ github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+l github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= -github.com/hashicorp/hcl/v2 v2.13.0 h1:0Apadu1w6M11dyGFxWnmhhcMjkbAiKCv7G1r/2QgCNc= -github.com/hashicorp/hcl/v2 v2.13.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0= +github.com/hashicorp/hcl/v2 v2.16.2 h1:mpkHZh/Tv+xet3sy3F9Ld4FyI2tUpWe9x3XtPx9f1a0= +github.com/hashicorp/hcl/v2 v2.16.2/go.mod h1:JRmR89jycNkrrqnMmvPDMd56n1rQJ2Q6KocSLCMCXng= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/memberlist v0.2.2 h1:5+RffWKwqJ71YPu9mWsF7ZOscZmwfasdA8kbdC7AO2g= github.com/hashicorp/memberlist v0.2.2/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= -github.com/hashicorp/packer-plugin-sdk v0.4.0 h1:UyLYe0y02D9wkOQ3FeeZWyFg2+mx2vLuWRGUL5xt50I= -github.com/hashicorp/packer-plugin-sdk v0.4.0/go.mod h1:uNhU3pmjM2ejgHYce/g4J+sa5rh81iYQztpGvGa5FOs= +github.com/hashicorp/packer-plugin-sdk v0.5.1 h1:ucXGWru98LsQrAWq8cEnaNN2Dvqw0HtyupAwNzrfy44= +github.com/hashicorp/packer-plugin-sdk v0.5.1/go.mod h1:OKziA4fQodpIq5HzOpRNt+vLpRJae61Z4uVFbeMLgd8= github.com/hashicorp/serf v0.9.5 h1:EBWvyu9tcRszt3Bxp3KNssBMP1KuHWyO51lz9+786iM= github.com/hashicorp/serf v0.9.5/go.mod h1:UWDWwZeL5cuWDJdl0C6wrvrUwEqtQ4ZKBKKENpqIUyk= github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE= @@ -409,11 +408,9 @@ github.com/ugorji/go/codec v1.2.6/go.mod h1:V6TCNZ4PHqoHGFZuSG1W8nrCzzdgA2DozYxW github.com/ulikunitz/xz v0.5.10 h1:t92gobL9l3HE202wg3rlk19F6X+JOxl9BBrCCMYEYd8= github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= -github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= -github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/zclconf/go-cty v1.10.0 h1:mp9ZXQeIcN8kAwuqorjH+Q+njbJKjLrvB2yIh4q7U+0= -github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= +github.com/zclconf/go-cty v1.12.1 h1:PcupnljUm9EIvbgSHQnHhUr3fO6oFmkOrvs2BAFNXXY= +github.com/zclconf/go-cty v1.12.1/go.mod h1:s9IfD1LK5ccNMSWCVFCE2rJfHiZgi7JijgeWIMfhLvA= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= @@ -462,7 +459,6 @@ golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= @@ -522,7 +518,6 @@ golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= @@ -553,7 +548,6 @@ google.golang.org/api v0.101.0 h1:lJPPeEBIRxGpGLwnBTam1NPEM8Z2BmmXEd3z812pjwM= google.golang.org/api v0.101.0/go.mod h1:CjxAAWWt3A3VrUE2IGDY2bgK5qhoG/OkyWVlYcP05MY= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= From 6bfc50f04c5f98ad7f86c45fcf49c44d8c9858d1 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Wed, 2 Aug 2023 11:59:22 -0400 Subject: [PATCH 086/111] Run packer-sdc to fix zclconf/go-cty incompatibility --- go.mod | 2 ++ go.sum | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index e2ce30e2..9f06ddc3 100644 --- a/go.mod +++ b/go.mod @@ -99,3 +99,5 @@ require ( gopkg.in/yaml.v2 v2.3.0 // indirect gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect ) + +replace github.com/zclconf/go-cty => github.com/nywilken/go-cty v1.12.1 // added by packer-sdc fix as noted in github.com/hashicorp/packer-plugin-sdk/issues/187 diff --git a/go.sum b/go.sum index c4f36046..a12bdefd 100644 --- a/go.sum +++ b/go.sum @@ -126,6 +126,7 @@ github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= @@ -330,6 +331,8 @@ github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7P github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d h1:VhgPp6v9qf9Agr/56bj7Y/xa04UccTW04VP0Qed4vnQ= github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d/go.mod h1:YUTz3bUH2ZwIWBy3CJBeOBEugqcmXREj14T+iG/4k4U= +github.com/nywilken/go-cty v1.12.1 h1:4dEeVqhsX1RVfdLgu3CIMeft4ELm9qygMk7/kcpnfCs= +github.com/nywilken/go-cty v1.12.1/go.mod h1:jQhMnBcOB2DrBaV2awY4z+oSZTPc2dnnwGqYqFo86G0= github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= @@ -408,9 +411,9 @@ github.com/ugorji/go/codec v1.2.6/go.mod h1:V6TCNZ4PHqoHGFZuSG1W8nrCzzdgA2DozYxW github.com/ulikunitz/xz v0.5.10 h1:t92gobL9l3HE202wg3rlk19F6X+JOxl9BBrCCMYEYd8= github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= +github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/zclconf/go-cty v1.12.1 h1:PcupnljUm9EIvbgSHQnHhUr3fO6oFmkOrvs2BAFNXXY= -github.com/zclconf/go-cty v1.12.1/go.mod h1:s9IfD1LK5ccNMSWCVFCE2rJfHiZgi7JijgeWIMfhLvA= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= @@ -459,6 +462,7 @@ golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= @@ -548,6 +552,7 @@ google.golang.org/api v0.101.0 h1:lJPPeEBIRxGpGLwnBTam1NPEM8Z2BmmXEd3z812pjwM= google.golang.org/api v0.101.0/go.mod h1:CjxAAWWt3A3VrUE2IGDY2bgK5qhoG/OkyWVlYcP05MY= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= From 06bd983ae263ea44240494b79c905328ace631ca Mon Sep 17 00:00:00 2001 From: BrandonRomano Date: Tue, 25 Apr 2023 13:11:17 -0700 Subject: [PATCH 087/111] docs: Upgrade plugin to integrations framework --- .github/workflows/ensure-docs-compiled.yaml | 22 ++ ...notify-integration-release-via-manual.yaml | 46 +++ .../notify-integration-release-via-tag.yaml | 40 +++ .web-docs/README.md | 31 ++ .../components/builder/vagrant/README.md | 216 ++++++++++++++ .../post-processor/vagrant-cloud/README.md | 271 ++++++++++++++++++ .../post-processor/vagrant/README.md | 251 ++++++++++++++++ .web-docs/metadata.hcl | 22 ++ .web-docs/scripts/compile-to-webdocs.sh | 129 +++++++++ GNUmakefile | 6 + docs/README.md | 30 +- docs/builders/vagrant.mdx | 8 +- docs/post-processors/vagrant-cloud.mdx | 23 +- docs/post-processors/vagrant.mdx | 24 +- 14 files changed, 1077 insertions(+), 42 deletions(-) create mode 100644 .github/workflows/ensure-docs-compiled.yaml create mode 100644 .github/workflows/notify-integration-release-via-manual.yaml create mode 100644 .github/workflows/notify-integration-release-via-tag.yaml create mode 100644 .web-docs/README.md create mode 100644 .web-docs/components/builder/vagrant/README.md create mode 100644 .web-docs/components/post-processor/vagrant-cloud/README.md create mode 100644 .web-docs/components/post-processor/vagrant/README.md create mode 100644 .web-docs/metadata.hcl create mode 100755 .web-docs/scripts/compile-to-webdocs.sh diff --git a/.github/workflows/ensure-docs-compiled.yaml b/.github/workflows/ensure-docs-compiled.yaml new file mode 100644 index 00000000..74a174d3 --- /dev/null +++ b/.github/workflows/ensure-docs-compiled.yaml @@ -0,0 +1,22 @@ +name: Ensure Docs are Compiled +on: + push: +jobs: + ensure-docs-compiled: + runs-on: ubuntu-latest + steps: + - name: Checkout 🛎 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + - uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 + - shell: bash + run: make build-docs + - shell: bash + run: | + if [[ -z "$(git status -s)" ]]; then + echo "OK" + else + echo "Docs have been updated, but the compiled docs have not been committed." + echo "Run 'make build-docs', and commit the result to resolve this error." + exit 1 + fi + diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml new file mode 100644 index 00000000..14a7664a --- /dev/null +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -0,0 +1,46 @@ +name: Notify Integration Release (Manual) +on: + workflow_dispatch: + inputs: + version: + description: "The release version (semver)" + default: 0.0.1 + required: false + branch: + description: "A branch or SHA" + default: 'main' + required: false +jobs: + notify-release: + runs-on: ubuntu-latest + steps: + - name: Checkout this repo + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + with: + ref: ${{ github.event.inputs.branch }} + # Ensure that Docs are Compiled + - uses: actions/setup-go@v4 + - shell: bash + run: make build-docs + - shell: bash + run: | + if [[ -z "$(git status -s)" ]]; then + echo "OK" + else + echo "Docs have been updated, but the compiled docs have not been committed." + echo "Run 'make build-docs', and commit the result to resolve this error." + exit 1 + fi + # Perform the Release + - name: Checkout integration-release-action + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + with: + repository: hashicorp/integration-release-action + path: ./integration-release-action + - name: Notify Release + uses: ./integration-release-action + with: + integration_identifier: 'packer/hashicorp/vagrant' + release_version: ${{ github.event.inputs.version }} + release_sha: ${{ github.event.inputs.branch }} + github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/notify-integration-release-via-tag.yaml b/.github/workflows/notify-integration-release-via-tag.yaml new file mode 100644 index 00000000..6e8ecb45 --- /dev/null +++ b/.github/workflows/notify-integration-release-via-tag.yaml @@ -0,0 +1,40 @@ +name: Notify Integration Release (Tag) +on: + push: + tags: + - '*.*.*' # Proper releases + - '*.*.*-*' # Pre releases +jobs: + notify-release: + runs-on: ubuntu-latest + steps: + - name: Checkout this repo + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + with: + ref: ${{ github.ref }} + # Ensure that Docs are Compiled + - uses: actions/setup-go@v4 + - shell: bash + run: make build-docs + - shell: bash + run: | + if [[ -z "$(git status -s)" ]]; then + echo "OK" + else + echo "Docs have been updated, but the compiled docs have not been committed." + echo "Run 'make build-docs', and commit the result to resolve this error." + exit 1 + fi + # Perform the Release + - name: Checkout integration-release-action + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + with: + repository: hashicorp/integration-release-action + path: ./integration-release-action + - name: Notify Release + uses: ./integration-release-action + with: + integration_identifier: 'packer/hashicorp/vagrant' + release_version: ${{ github.ref_name }} + release_sha: ${{ github.ref }} + github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.web-docs/README.md b/.web-docs/README.md new file mode 100644 index 00000000..38cb3a8c --- /dev/null +++ b/.web-docs/README.md @@ -0,0 +1,31 @@ + +The Vagrant plugin integrates Packer with HashiCorp [Vagrant](https://www.vagrantup.com/), allowing you to use Packer to create development boxes. + +### Installation +To install this plugin add this code into your Packer configuration and run [packer init](/packer/docs/commands/init) + +```hcl +packer { + required_plugins { + vagrant = { + version = "~> 1" + source = "github.com/hashicorp/vagrant" + } + } +} +``` + +Alternatively, you can use `packer plugins install` to manage installation of this plugin. + +```sh +packer plugins install github.com/hashicorp/vagrant +``` + +### Components + +#### Builders +- [vagrant](/packer/integrations/hashicorp/vagrant/latest/components/builder/vagrant) - The Vagrant builder is intended for building new boxes from already-existing boxes. + +#### Post-Processor +- [vagrant](/packer/integrations/hashicorp/vagrant/latest/components/post-processor/vagrant) - The Packer Vagrant post-processor takes a build and converts the artifact into a valid Vagrant box. +- [vagrant-cloud](/packer/integrations/hashicorp/vagrant/latest/components/post-processor/vagrant-cloud) - The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. diff --git a/.web-docs/components/builder/vagrant/README.md b/.web-docs/components/builder/vagrant/README.md new file mode 100644 index 00000000..3e859d33 --- /dev/null +++ b/.web-docs/components/builder/vagrant/README.md @@ -0,0 +1,216 @@ +Type: `vagrant` +Artifact BuilderId: `vagrant` + +The Vagrant builder is intended for building new boxes from already-existing +boxes. Your source should be a URL or path to a .box file or a Vagrant Cloud +box name such as `hashicorp/precise64`. + +Packer will not install vagrant, nor will it install the underlying +virtualization platforms or extra providers; We expect when you run this +builder that you have already installed what you need. + +By default, this builder will initialize a new Vagrant workspace, launch your +box from that workspace, provision it, call `vagrant package` to package it +into a new box, and then destroy the original box. Please note that vagrant +will _not_ remove the box file from your system (we don't call +`vagrant box remove`). + +You can change the behavior so that the builder doesn't destroy the box by +setting the `teardown_method` option. You can change the behavior so the builder +doesn't package it (not all provisioners support the `vagrant package` command) +by setting the `skip package` option. You can also change the behavior so that +rather than initializing a new Vagrant workspace, you use an already defined +one, by using `global_id` instead of `source_box`. + +Please note that if you are using the Vagrant builder, then the Vagrant +post-processor is unnecessary because the output of the Vagrant builder is +already a Vagrant box; using that post-processor with the Vagrant builder will +cause your build to fail. Similarly, since Vagrant boxes are already compressed, +the Compress post-processor will not work with this builder. + +## Configuration Reference + +### Required + +- `source_path` (string) - URL of the vagrant box to use, or the name of the + vagrant box. `hashicorp/precise64`, `./mylocalbox.box` and + `https://example.com/my-box.box` are all valid source boxes. If your + source is a .box file, whether locally or from a URL like the latter example + above, you will also need to provide a `box_name`. This option is required, + unless you set `global_id`. You may only set one or the other, not both. + + or + +- `global_id` (string) - the global id of a Vagrant box already added to Vagrant + on your system. You can find the global id of your Vagrant boxes using the + command `vagrant global-status`; your global_id will be a 7-digit number and + letter combination that you'll find in the leftmost column of the + global-status output. If you choose to use `global_id` instead of + `source_box`, Packer will skip the Vagrant initialize and add steps, and + simply launch the box directly using the global id. + +### Optional + + + +- `output_dir` (string) - The directory to create that will contain your output box. We always + create this directory and run from inside of it to prevent Vagrant init + collisions. If unset, it will be set to packer- plus your buildname. + +- `checksum` (string) - The checksum for the .box file. The type of the checksum is specified + within the checksum field as a prefix, ex: "md5:{$checksum}". The type + of the checksum can also be omitted and Packer will try to infer it + based on string length. Valid values are "none", "{$checksum}", + "md5:{$checksum}", "sha1:{$checksum}", "sha256:{$checksum}", + "sha512:{$checksum}" or "file:{$path}". Here is a list of valid checksum + values: + * md5:090992ba9fd140077b0661cb75f7ce13 + * 090992ba9fd140077b0661cb75f7ce13 + * sha1:ebfb681885ddf1234c18094a45bbeafd91467911 + * ebfb681885ddf1234c18094a45bbeafd91467911 + * sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 + * ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 + * file:http://releases.ubuntu.com/20.04/SHA256SUMS + * file:file://./local/path/file.sum + * file:./local/path/file.sum + * none + Although the checksum will not be verified when it is set to "none", + this is not recommended since these files can be very large and + corruption does happen from time to time. + +- `box_name` (string) - if your source_box is a boxfile that we need to add to Vagrant, this is + the name to give it. If left blank, will default to "packer_" plus your + buildname. + +- `insert_key` (bool) - If true, Vagrant will automatically insert a keypair to use for SSH, + replacing Vagrant's default insecure key inside the machine if detected. + By default, Packer sets this to false. + +- `provider` (string) - The vagrant provider. + This parameter is required when source_path have more than one provider, + or when using vagrant-cloud post-processor. Defaults to unset. + +- `vagrantfile_template` (string) - What vagrantfile to use + +- `teardown_method` (string) - Whether to halt, suspend, or destroy the box when the build has + completed. Defaults to "halt" + +- `box_version` (string) - What box version to use when initializing Vagrant. + +- `template` (string) - a path to a golang template for a vagrantfile. Our default template can + be found here. The template variables available to you are + `{{ .BoxName }}`, `{{ .SyncedFolder }}`, and `{{.InsertKey}}`, which + correspond to the Packer options box_name, synced_folder, and insert_key. + +- `synced_folder` (string) - Path to the folder to be synced to the guest. The path can be absolute + or relative to the directory Packer is being run from. + +- `skip_add` (bool) - Don't call "vagrant add" to add the box to your local environment; this + is necessary if you want to launch a box that is already added to your + vagrant environment. + +- `add_cacert` (string) - Equivalent to setting the + --cacert + option in vagrant add; defaults to unset. + +- `add_capath` (string) - Equivalent to setting the + --capath option + in vagrant add; defaults to unset. + +- `add_cert` (string) - Equivalent to setting the + --cert option in + vagrant add; defaults to unset. + +- `add_clean` (bool) - Equivalent to setting the + --clean flag in + vagrant add; defaults to unset. + +- `add_force` (bool) - Equivalent to setting the + --force flag in + vagrant add; defaults to unset. + +- `add_insecure` (bool) - Equivalent to setting the + --insecure flag in + vagrant add; defaults to unset. + +- `skip_package` (bool) - if true, Packer will not call vagrant package to + package your base box into its own standalone .box file. + +- `output_vagrantfile` (string) - Output Vagrantfile + +- `package_include` ([]string) - Equivalent to setting the + [`--include`](https://developer.hashicorp.com/vagrant/docs/cli/package#include-x-y-z) option + in `vagrant package`; defaults to unset + + + + +## Example + +Sample for `hashicorp/precise64` with virtualbox provider. + +**JSON** + +```json +{ + "builders": [ + { + "communicator": "ssh", + "source_path": "hashicorp/precise64", + "provider": "virtualbox", + "add_force": true, + "type": "vagrant" + } + ] +} +``` + +**HCL2** + +```hcl +source "vagrant" "example" { + communicator = "ssh" + source_path = "hashicorp/precise64" + provider = "virtualbox" + add_force = true +} + +build { + sources = ["source.vagrant.example"] +} +``` + + +## Regarding output directory and new box + +After Packer completes building and provisioning a new Vagrant Box file, it is worth +noting that the new box file will need to be added to Vagrant. For a beginner to Packer +and Vagrant, it may seem as if a simple 'vagrant up' in the output directory will run the +the newly created Box. This is not the case. + +Rather, create a new directory (to avoid Vagarant init collisions), add the new +package.box to Vagrant and init. Then run vagrant up to bring up the new box created +by Packer. You will now be able to connect to the new box with provisioned changes. + +``` +'mkdir output2' +'cp package.box ./output2' +'vagrant box add new-box name-of-the-packer-box.box' +'vagrant init new-box' +'vagrant up' +``` + +## A note on SSH connections + +Currently this builder only works for SSH connections, and automatically fills +in all information needed for the SSH communicator using vagrant's ssh-config. + +If you would like to connect via a different username or authentication method +than is produced when you call `vagrant ssh-config`, then you must provide the + +`ssh_username` and all other relevant authentication information (e.g. +`ssh_password` or `ssh_private_key_file`) + +By providing the `ssh_username`, you're telling Packer not to use the vagrant +ssh config, except for determining the host and port for the virtual machine to +connect to. diff --git a/.web-docs/components/post-processor/vagrant-cloud/README.md b/.web-docs/components/post-processor/vagrant-cloud/README.md new file mode 100644 index 00000000..47e44311 --- /dev/null +++ b/.web-docs/components/post-processor/vagrant-cloud/README.md @@ -0,0 +1,271 @@ +Type: `vagrant-cloud` +Artifact BuilderId: `pearkes.post-processor.vagrant-cloud` + +[Vagrant Cloud](https://app.vagrantup.com/boxes/search) hosts and serves boxes +to Vagrant, allowing you to version and distribute boxes to an organization in a +simple way. + +The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant +Cloud. Currently, the Vagrant Cloud post-processor will accept and upload boxes +supplied to it from the [Vagrant](/docs/post-processor/vagrant.mdx) or +[Artifice](https://developer.hashicorp.com/packer/docs/post-processor/artifice) post-processors and the +[Vagrant](/docs/builder/vagrant.mdx) builder. + +You'll need to be familiar with Vagrant Cloud, have an upgraded account to +enable box hosting, and be distributing your box via the [shorthand name](https://developer.hashicorp.com/vagrant/docs/cli/box) configuration. + +## Workflow + +It's important to understand the workflow that using this post-processor +enforces in order to take full advantage of Vagrant and Vagrant Cloud. + +The use of this processor assume that you currently distribute, or plan to +distribute, boxes via Vagrant Cloud. It also assumes you create Vagrant Boxes +and deliver them to your team in some fashion. + +Here is an example workflow: + +1. You use Packer to build a Vagrant Box for the `virtualbox` provider +2. The `vagrant-cloud` post-processor is configured to point to the box + `hashicorp/foobar` on Vagrant Cloud via the `box_tag` configuration +3. The post-processor receives the box from the `vagrant` post-processor +4. It then creates the configured version, or verifies the existence of it, on + Vagrant Cloud +5. A provider matching the name of the Vagrant provider is then created +6. The box is uploaded to Vagrant Cloud +7. The upload is verified +8. The version is released and available to users of the box + +~> The Vagrant Cloud box (`hashicorp/foobar` in this example) must already +exist. Packer will not create the box automatically. If running Packer in +automation, consider using the +[Vagrant Cloud API](https://developer.hashicorp.com/vagrant/vagrant-cloud/api) +to create the Vagrant Cloud box if it doesn't already exist. + +## Configuration + +The configuration allows you to specify the target box that you have access to +on Vagrant Cloud, as well as authentication and version information. + +### Required + +- `box_tag` (string) - The shorthand tag for your box that maps to Vagrant + Cloud, for example `hashicorp/precise64`, which is short for + `vagrantcloud.com/hashicorp/precise64`. This box must already exist in + Vagrant Cloud. Packer will not create the box automatically. + +- `version` (string) - The version number, typically incrementing a previous + version. The version string is validated based on [Semantic + Versioning](http://semver.org/). The string must match a pattern that could + be semver, and doesn't validate that the version comes after your previous + versions. + +- `access_token` (string) - Your access token for the Vagrant Cloud API. This + can be generated on your [tokens + page](https://app.vagrantup.com/settings/security). If not specified, the + environment will be searched. First, `VAGRANT_CLOUD_TOKEN` is checked, and + if nothing is found, finally `ATLAS_TOKEN` will be used. This is required + unless you are using a private hosting solution (i.e. `vagrant_cloud_url` + has been populated). + + **or** + +- `vagrant_cloud_url` (string) - Override the base URL for Vagrant Cloud. + This is useful if you're using Vagrant Private Cloud in your own network. + Defaults to `https://vagrantcloud.com/api/v1`. If this value is set to something + other than the default then `access_token` can be left blank and no + `Authorization` header will be added to requests sent by this post-processor. + +### Optional + +- `no_release` (string) - If set to true, does not release the version on + Vagrant Cloud, making it active. You can manually release the version via + the API or Web UI. Defaults to `false`. + +- `insecure_skip_tls_verify` (boolean) - If set to true _and_ `vagrant_cloud_url` + is set to something different than its default, it will set TLS InsecureSkipVerify + to true. In other words, this will disable security checks of SSL. You may need + to set this option to true if your host at `vagrant_cloud_url` is using a + self-signed certificate. + +- `keep_input_artifact` (boolean) - When true, preserve the local box + after uploading to Vagrant cloud. Defaults to `true`. + +- `version_description` (string) - Optional Markdown text used as a + full-length and in-depth description of the version, typically for denoting + changes introduced + +- `box_download_url` (string) - Optional URL for a self-hosted box. + If this is set the box will not be uploaded to the Vagrant Cloud. + This is a [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine). + Therefore, you may use user variables and template functions in this field. + The following extra variables are also available in this engine: + + - `Provider`: The Vagrant provider the box is for + - `ArtifactId`: The ID of the input artifact. + +- `box_checksum` (string) - Optional checksum for the provider .box file. + The type of the checksum is specified within the checksum field as a prefix, + ex: "md5:{$checksum}". Valid values are: + - null or "" + - "md5:{$checksum}" + - "sha1:{$checksum}" + - "sha256:{$checksum}" + - "sha512:{$checksum}" + See + +- `no_direct_upload` (boolean) - When `true`, upload the box artifact through + Vagrant Cloud instead of directly to the backend storage. + +## Use with the Vagrant Post-Processor + +An example configuration is shown below. Note the use of the [post-processors](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processors) +block that wraps both the Vagrant and Vagrant Cloud [post-processor](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processor) blocks within the post-processor section. Chaining +the post-processors together in this way tells Packer that the artifact +produced by the Vagrant post-processor should be passed directly to the Vagrant +Cloud Post-Processor. It also sets the order in which the post-processors +should run. + +Failure to chain the post-processors together in this way will result in the +wrong artifact being supplied to the Vagrant Cloud post-processor. This will +likely cause the Vagrant Cloud post-processor to error and fail. + +**JSON** + +```json +{ + "variables": { + "cloud_token": "{{ env `VAGRANT_CLOUD_TOKEN` }}", + "version": "1.0.{{timestamp}}" + }, + "post-processors": [ + { + "type": "shell-local", + "inline": ["echo Doing stuff..."] + }, + [ + { + "type": "vagrant", + "include": ["image.iso"], + "vagrantfile_template": "vagrantfile.tpl", + "output": "proxycore_{{.Provider}}.box" + }, + { + "type": "vagrant-cloud", + "box_tag": "hashicorp/precise64", + "access_token": "{{user `cloud_token`}}", + "version": "{{user `version`}}" + } + ] + ] +} +``` + +**HCL2** + +```hcl +build { + sources = ["source.null.autogenerated_1"] + + post-processor "shell-local" { + inline = ["echo Doing stuff..."] + } + post-processors { + post-processor "vagrant" { + include = ["image.iso"] + output = "proxycore_{{.Provider}}.box" + vagrantfile_template = "vagrantfile.tpl" + } + post-processor "vagrant-cloud" { + access_token = "${var.cloud_token}" + box_tag = "hashicorp/precise64" + version = "${local.version}" + } + } +} +``` + + +## Use with the Artifice Post-Processor + +An example configuration is shown below. Note the use of the nested array that +wraps both the Artifice and Vagrant Cloud post-processors within the +post-processor section. Chaining the post-processors together in this way tells +Packer that the artifact produced by the Artifice post-processor should be +passed directly to the Vagrant Cloud Post-Processor. It also sets the order in +which the post-processors should run. + +Failure to chain the post-processors together in this way will result in the +wrong artifact being supplied to the Vagrant Cloud post-processor. This will +likely cause the Vagrant Cloud post-processor to error and fail. + +Note that the Vagrant box specified in the Artifice post-processor `files` array +must end in the `.box` extension. It must also be the first file in the array. +Additional files bundled by the Artifice post-processor will be ignored. + +**JSON** + +```json +{ + "variables": { + "cloud_token": "{{ env `VAGRANT_CLOUD_TOKEN` }}" + }, + + "builders": [ + { + "type": "null", + "communicator": "none" + } + ], + + "post-processors": [ + { + "type": "shell-local", + "inline": ["echo Doing stuff..."] + }, + [ + { + "type": "artifice", + "files": ["./path/to/my.box"] + }, + { + "type": "vagrant-cloud", + "box_tag": "myorganisation/mybox", + "access_token": "{{user `cloud_token`}}", + "version": "0.1.0" + } + ] + ] +} +``` + +**HCL2** + +```hcl +variable "cloud_token" { + type = string + default = "${env("VAGRANT_CLOUD_TOKEN")}" +} + +source "null" "autogenerated_1" { + communicator = "none" +} + +build { + sources = ["source.null.autogenerated_1"] + + post-processor "shell-local" { + inline = ["echo Doing stuff..."] + } + post-processors { + post-processor "artifice" { + files = ["./path/to/my.box"] + } + post-processor "vagrant-cloud" { + access_token = "${var.cloud_token}" + box_tag = "myorganisation/mybox" + version = "0.1.0" + } + } +} +``` diff --git a/.web-docs/components/post-processor/vagrant/README.md b/.web-docs/components/post-processor/vagrant/README.md new file mode 100644 index 00000000..13f11322 --- /dev/null +++ b/.web-docs/components/post-processor/vagrant/README.md @@ -0,0 +1,251 @@ +Type: `vagrant` +Artifact BuilderId: `mitchellh.post-processor.vagrant` + +The Packer Vagrant post-processor takes a build and converts the artifact into +a valid [Vagrant](https://developer.hashicorp.com/vagrant) box, if it can. This lets you use +Packer to automatically create arbitrarily complex Vagrant boxes, and is in +fact how the official boxes distributed by Vagrant are created. + +If you've never used a post-processor before, please read the documentation on +[using post-processors](https://developer.hashicorp.com/packer/docs/post-processors). +This knowledge will be expected for the remainder of this document. + +Because Vagrant boxes are +[provider-specific](https://developer.hashicorp.com/vagrant/docs/boxes/format), the +Vagrant post-processor is hardcoded to understand how to convert the artifacts +of certain builders into proper boxes for their respective providers. + +Currently, the Vagrant post-processor can create boxes for the following +providers. + +- AWS +- Azure +- DigitalOcean +- Docker +- Hyper-V +- LXC +- Parallels +- QEMU +- VirtualBox +- VMware + +-> **Support for additional providers** is planned. If the Vagrant +post-processor doesn't support creating boxes for a provider you care about, +please help by contributing to Packer and adding support for it. + +Please note that if you are using the Vagrant builder, then the Vagrant +post-processor is unnecessary because the output of the Vagrant builder is +already a Vagrant box; using this post-processor with the Vagrant builder will +cause your build to fail. + +## Configuration + +The simplest way to use the post-processor is to just enable it. No +configuration is required by default. This will mostly do what you expect and +will build functioning boxes for many of the built-in builders of Packer. + +However, if you want to configure things a bit more, the post-processor does +expose some configuration options. The available options are listed below, with +more details about certain options in following sections. + +- `compression_level` (number) - An integer representing the compression + level to use when creating the Vagrant box. Valid values range from 0 to 9, + with 0 being no compression and 9 being the best compression. By default, + compression is enabled at level 6. + +- `include` (array of strings) - Paths to files to include in the Vagrant + box. These files will each be copied into the top level directory of the + Vagrant box (regardless of their paths). They can then be used from the + Vagrantfile. + +- `keep_input_artifact` (boolean) - When true, preserve the artifact we use to + create the vagrant box. Defaults to `false`, except when you set a cloud + provider (e.g. aws, azure, google, digitalocean). In these cases deleting + the input artifact would render the vagrant box useless, so we always keep + these artifacts -- even if you specifically set + `"keep_input_artifact":false` + +- `output` (string) - The full path to the box file that will be created by + this post-processor. This is a + [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine). Therefore, you may use user + variables and template functions in this field. The following extra + variables are also available in this engine: + + - `Provider`: The Vagrant provider the box is for + - `ArtifactId`: The ID of the input artifact. + - `BuildName`: The name of the build. + + By default, the value of this config is + `packer_{{.BuildName}}_{{.Provider}}.box`. + +- `provider_override` (string) - this option will override the internal logic + that decides which Vagrant provider to set for a particular Packer builder's + or post-processor's artifact. It is required when the artifact comes from the + Artifice post-processor, but is otherwise optional. Valid options are: + `digitalocean`, `virtualbox`, `azure`, `vmware`, `libvirt`, `docker`, + `lxc`, `scaleway`, `hyperv`, `parallels`, `aws`, or `google`. + +- `vagrantfile_template` (string) - Path to a template to use for the + Vagrantfile that is packaged with the box. This option supports the usage of the [template engine](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/engine) + for JSON and the [contextual variables](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/contextual-variables) for HCL2. + +- `vagrantfile_template_generated` (boolean) - By default, Packer will + exit with an error if the file specified using the + `vagrantfile_template` variable is not found. However, under certain + circumstances, it may be desirable to dynamically generate the + Vagrantfile during the course of the build. Setting this variable to + `true` skips the start up check and allows the user to script the + creation of the Vagrantfile at some previous point in the build. + Defaults to `false`. + +## Using together with the Artifice post-processor + +Sometimes you may want to run several builds in a pipeline rather than running +this post-processor inside a long-running Packer build. Here is an example of +how to do this: + +**JSON** + +```json +{ + "builders": [ + { + "type": "null", + "communicator": "none" + } + ], + "post-processors": [ + [ + { + "type": "artifice", + "files": [ + "output-virtualbox-iso/vbox-example-disk001.vmdk", + "output-virtualbox-iso/vbox-example.ovf" + ] + }, + { + "type": "vagrant", + "keep_input_artifact": true, + "provider_override": "virtualbox" + } + ] + ] +} +``` + +**HCL2** + +```hcl +source "null" "example" { + communicator = "none" +} + +build { + sources = [ + "source.null.example" + ] + post-processors { + post-processor "artifice" { + files = [ + "output-virtualbox-iso/vbox-example-disk001.vmdk", + "output-virtualbox-iso/vbox-example.ovf" + ] + } + post-processor "vagrant" { + keep_input_artifact = true + provider_override = "virtualbox" + } + } +} +``` + + +## Provider-Specific Overrides + +If you have a Packer template with multiple builder types within it, you may +want to configure the box creation for each type a little differently. For +example, the contents of the Vagrantfile for a Vagrant box for AWS might be +different from the contents of the Vagrantfile you want for VMware. The +post-processor lets you do this. + +Specify overrides within the `override` configuration by provider name: + +**JSON** + +```json +{ + "type": "vagrant", + "compression_level": 1, + "override": { + "vmware": { + "compression_level": 0 + } + } +} +``` + +**HCL2** + +```hcl +## This feature is not implemented in HCL. +``` + + +In the example above, the compression level will be set to 1 except for VMware, +where it will be set to 0. + +The available provider names are: + +- `aws` +- `azure` +- `digitalocean` +- `google` +- `hyperv` +- `parallels` +- `libvirt` +- `lxc` +- `scaleway` +- `virtualbox` +- `vmware` +- `docker` + +## Input Artifacts + +By default, Packer will delete the original input artifact, assuming you only +want the final Vagrant box as the result. If you wish to keep the input +artifact (the raw virtual machine, for example), then you must configure Packer +to keep it. + +Please see the [documentation on input artifacts](https://developer.hashicorp.com/packer/docs/templates/legacy_json_templates/post-processors#input-artifacts) +for more information. + +### Docker + +Using a Docker input artifact will include a reference to the image in the +`Vagrantfile`. If the image tag is not specified in the post-processor, the +sha256 hash will be used. + +The following Docker input artifacts are supported: + +- `docker` builder with `commit: true`, always uses the sha256 hash +- `docker-import` +- `docker-tag` +- `docker-push` + +### QEMU/libvirt + +The `libvirt` provider supports QEMU artifacts built using any these +accelerators: none, kvm, tcg, or hvf. + +### VMWare + +If you are using the Vagrant post-processor with the `vmware-esxi` builder, you +must export the builder artifact locally; the Vagrant post-processor will +not work on remote artifacts. + +### Artifice + +If you are using this post-processor after defining an artifact using the +Artifice post-processor, then you must set the "provider_override" template +option so that the Vagrant post-processor knows what provider to use to create +the Vagrant box. diff --git a/.web-docs/metadata.hcl b/.web-docs/metadata.hcl new file mode 100644 index 00000000..0dee45d7 --- /dev/null +++ b/.web-docs/metadata.hcl @@ -0,0 +1,22 @@ +# For full specification on the configuration of this file visit: +# https://github.com/hashicorp/integration-template#metadata-configuration +integration { + name = "Vagrant" + description = "The Vagrant multi-component plugin can be used with HashiCorp Packer to create custom images." + identifier = "packer/hashicorp/vagrant" + component { + type = "builder" + name = "Vagrant" + slug = "vagrant" + } + component { + type = "post-processor" + name = "Vagrant Cloud" + slug = "vagrant-cloud" + } + component { + type = "post-processor" + name = "Vagrant" + slug = "vagrant" + } +} diff --git a/.web-docs/scripts/compile-to-webdocs.sh b/.web-docs/scripts/compile-to-webdocs.sh new file mode 100755 index 00000000..51a72383 --- /dev/null +++ b/.web-docs/scripts/compile-to-webdocs.sh @@ -0,0 +1,129 @@ +#!/usr/bin/env bash + +# Converts the folder name that the component documentation file +# is stored in into the integration slug of the component. +componentTypeFromFolderName() { + if [[ "$1" = "builders" ]]; then + echo "builder" + elif [[ "$1" = "provisioners" ]]; then + echo "provisioner" + elif [[ "$1" = "post-processors" ]]; then + echo "post-processor" + elif [[ "$1" = "datasources" ]]; then + echo "data-source" + else + echo "" + fi +} + +# $1: The content to adjust links +# $2: The organization of the integration +rewriteLinks() { + local result="$1" + local organization="$2" + + urlSegment="([^/]+)" + urlAnchor="(#[^/]+)" + + # Rewrite Component Index Page links to the Integration root page. + # + # (\1) (\2) (\3) + # /packer/plugins/datasources/amazon#anchor-tag--> + # /packer/integrations/hashicorp/amazon#anchor-tag + local find="\(\/packer\/plugins\/$urlSegment\/$urlSegment$urlAnchor?\)" + local replace="\(\/packer\/integrations\/$organization\/\2\3\)" + result="$(echo "$result" | sed -E "s/$find/$replace/g")" + + + # Rewrite Component links to the Integration component page + # + # (\1) (\2) (\3) (\4) + # /packer/plugins/datasources/amazon/parameterstore#anchor-tag --> + # /packer/integrations/{organization}/amazon/latest/components/datasources/parameterstore + local find="\(\/packer\/plugins\/$urlSegment\/$urlSegment\/$urlSegment$urlAnchor?\)" + local replace="\(\/packer\/integrations\/$organization\/\2\/latest\/components\/\1\/\3\4\)" + result="$(echo "$result" | sed -E "s/$find/$replace/g")" + + # Rewrite the Component URL segment from the Packer Plugin format + # to the Integrations format + result="$(echo "$result" \ + | sed "s/\/datasources\//\/data-source\//g" \ + | sed "s/\/builders\//\/builder\//g" \ + | sed "s/\/post-processors\//\/post-processor\//g" \ + | sed "s/\/provisioners\//\/provisioner\//g" \ + )" + + echo "$result" +} + +# $1: Docs Dir +# $2: Web Docs Dir +# $3: Component File +# $4: The org of the integration +processComponentFile() { + local docsDir="$1" + local webDocsDir="$2" + local componentFile="$3" + + local escapedDocsDir="$(echo "$docsDir" | sed 's/\//\\\//g' | sed 's/\./\\\./g')" + local componentTypeAndSlug="$(echo "$componentFile" | sed "s/$escapedDocsDir\///g" | sed 's/\.mdx//g')" + + # Parse out the Component Slug & Component Type + local componentSlug="$(echo "$componentTypeAndSlug" | cut -d'/' -f 2)" + local componentType="$(componentTypeFromFolderName "$(echo "$componentTypeAndSlug" | cut -d'/' -f 1)")" + if [[ "$componentType" = "" ]]; then + echo "Failed to process '$componentFile', unexpected folder name." + echo "Documentation for components must be stored in one of:" + echo "builders, provisioners, post-processors, datasources" + exit 1 + fi + + + # Calculate the location of where this file will ultimately go + local webDocsFolder="$webDocsDir/components/$componentType/$componentSlug" + mkdir -p "$webDocsFolder" + local webDocsFile="$webDocsFolder/README.md" + local webDocsFileTmp="$webDocsFolder/README.md.tmp" + + # Copy over the file to its webDocsFile location + cp "$componentFile" "$webDocsFile" + + # Remove the Header + local lastMetadataLine="$(grep -n -m 2 '^\-\-\-' "$componentFile" | tail -n1 | cut -d':' -f1)" + cat "$webDocsFile" | tail -n +"$(($lastMetadataLine+2))" > "$webDocsFileTmp" + mv "$webDocsFileTmp" "$webDocsFile" + + # Remove the top H1, as this will be added automatically on the web + cat "$webDocsFile" | tail -n +3 > "$webDocsFileTmp" + mv "$webDocsFileTmp" "$webDocsFile" + + # Rewrite Links + rewriteLinks "$(cat "$webDocsFile")" "$4" > "$webDocsFileTmp" + mv "$webDocsFileTmp" "$webDocsFile" +} + +# Compiles the Packer SDC compiled docs folder down +# to a integrations-compliant folder (web docs) +# +# $1: The directory of the plugin +# $2: The directory of the SDC compiled docs files +# $3: The output directory to place the web-docs files +# $4: The org of the integration +compileWebDocs() { + local docsDir="$1/$2" + local webDocsDir="$1/$3" + + echo "Compiling MDX docs in '$2' to Markdown in '$3'..." + # Create the web-docs directory if it hasn't already been created + mkdir -p "$webDocsDir" + + # Copy the README over + cp "$docsDir/README.md" "$webDocsDir/README.md" + + # Process all MDX component files (exclude index files, which are unsupported) + for file in $(find "$docsDir" | grep "$docsDir/.*/.*\.mdx" | grep --invert-match "index.mdx"); do + processComponentFile "$docsDir" "$webDocsDir" "$file" "$4" + done +} + +compileWebDocs "$1" "$2" "$3" "$4" diff --git a/GNUmakefile b/GNUmakefile index fe638393..d9a8e031 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -34,3 +34,9 @@ generate: install-packer-sdc @go generate ./... packer-sdc renderdocs -src ./docs -dst ./.docs -partials ./docs-partials # checkout the .docs folder for a preview of the docs + +build-docs: install-packer-sdc + @if [ -d ".docs" ]; then rm -r ".docs"; fi + @packer-sdc renderdocs -src "docs" -partials docs-partials/ -dst ".docs/" + @./.web-docs/scripts/compile-to-webdocs.sh "." ".docs" ".web-docs" "hashicorp" + @rm -r ".docs" diff --git a/docs/README.md b/docs/README.md index d7205cc9..38cb3a8c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,9 +1,31 @@ -# Vagrant Plugin The Vagrant plugin integrates Packer with HashiCorp [Vagrant](https://www.vagrantup.com/), allowing you to use Packer to create development boxes. -- [vagrant builder](/docs/builders/vagrant.mdx) - The Vagrant builder is intended for building new boxes from already-existing boxes. +### Installation +To install this plugin add this code into your Packer configuration and run [packer init](/packer/docs/commands/init) -- [vagrant post-processor](/docs/post-processors/vagrant.mdx) - The Packer Vagrant post-processor takes a build and converts the artifact into a valid Vagrant box. +```hcl +packer { + required_plugins { + vagrant = { + version = "~> 1" + source = "github.com/hashicorp/vagrant" + } + } +} +``` -- [vagrant-cloud post-processor](/docs/post-processors/vagrant-cloud.mdx) - The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. +Alternatively, you can use `packer plugins install` to manage installation of this plugin. + +```sh +packer plugins install github.com/hashicorp/vagrant +``` + +### Components + +#### Builders +- [vagrant](/packer/integrations/hashicorp/vagrant/latest/components/builder/vagrant) - The Vagrant builder is intended for building new boxes from already-existing boxes. + +#### Post-Processor +- [vagrant](/packer/integrations/hashicorp/vagrant/latest/components/post-processor/vagrant) - The Packer Vagrant post-processor takes a build and converts the artifact into a valid Vagrant box. +- [vagrant-cloud](/packer/integrations/hashicorp/vagrant/latest/components/post-processor/vagrant-cloud) - The Vagrant Cloud post-processor enables the upload of Vagrant boxes to Vagrant Cloud. diff --git a/docs/builders/vagrant.mdx b/docs/builders/vagrant.mdx index fec91707..30b72083 100644 --- a/docs/builders/vagrant.mdx +++ b/docs/builders/vagrant.mdx @@ -67,8 +67,7 @@ the Compress post-processor will not work with this builder. Sample for `hashicorp/precise64` with virtualbox provider. - - +**JSON** ```json { @@ -84,8 +83,7 @@ Sample for `hashicorp/precise64` with virtualbox provider. } ``` - - +**HCL2** ```hcl source "vagrant" "example" { @@ -100,8 +98,6 @@ build { } ``` - - ## Regarding output directory and new box diff --git a/docs/post-processors/vagrant-cloud.mdx b/docs/post-processors/vagrant-cloud.mdx index 3050bf14..6c24d395 100644 --- a/docs/post-processors/vagrant-cloud.mdx +++ b/docs/post-processors/vagrant-cloud.mdx @@ -22,7 +22,7 @@ supplied to it from the [Vagrant](/docs/post-processors/vagrant.mdx) or [Vagrant](/docs/builders/vagrant.mdx) builder. You'll need to be familiar with Vagrant Cloud, have an upgraded account to -enable box hosting, and be distributing your box via the [shorthand name](https://docs.vagrantup.com/v2/cli/box.html) configuration. +enable box hosting, and be distributing your box via the [shorthand name](https://developer.hashicorp.com/vagrant/docs/cli/box) configuration. ## Workflow @@ -49,7 +49,7 @@ Here is an example workflow: ~> The Vagrant Cloud box (`hashicorp/foobar` in this example) must already exist. Packer will not create the box automatically. If running Packer in automation, consider using the -[Vagrant Cloud API](https://www.vagrantup.com/docs/vagrant-cloud/api) +[Vagrant Cloud API](https://developer.hashicorp.com/vagrant/vagrant-cloud/api) to create the Vagrant Cloud box if it doesn't already exist. ## Configuration @@ -130,7 +130,7 @@ on Vagrant Cloud, as well as authentication and version information. ## Use with the Vagrant Post-Processor An example configuration is shown below. Note the use of the [post-processors](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processors) -block that wraps both the Vagrant and Vagrant Cloud [post-processor](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processors) blocks within the post-processor section. Chaining +block that wraps both the Vagrant and Vagrant Cloud [post-processor](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/post-processor) blocks within the post-processor section. Chaining the post-processors together in this way tells Packer that the artifact produced by the Vagrant post-processor should be passed directly to the Vagrant Cloud Post-Processor. It also sets the order in which the post-processors @@ -140,8 +140,7 @@ Failure to chain the post-processors together in this way will result in the wrong artifact being supplied to the Vagrant Cloud post-processor. This will likely cause the Vagrant Cloud post-processor to error and fail. - - +**JSON** ```json { @@ -172,8 +171,7 @@ likely cause the Vagrant Cloud post-processor to error and fail. } ``` - - +**HCL2** ```hcl build { @@ -197,8 +195,6 @@ build { } ``` - - ## Use with the Artifice Post-Processor @@ -217,8 +213,7 @@ Note that the Vagrant box specified in the Artifice post-processor `files` array must end in the `.box` extension. It must also be the first file in the array. Additional files bundled by the Artifice post-processor will be ignored. - - +**JSON** ```json { @@ -254,8 +249,7 @@ Additional files bundled by the Artifice post-processor will be ignored. } ``` - - +**HCL2** ```hcl variable "cloud_token" { @@ -285,6 +279,3 @@ build { } } ``` - - - diff --git a/docs/post-processors/vagrant.mdx b/docs/post-processors/vagrant.mdx index a772617b..78d364bd 100644 --- a/docs/post-processors/vagrant.mdx +++ b/docs/post-processors/vagrant.mdx @@ -18,7 +18,7 @@ Type: `vagrant` Artifact BuilderId: `mitchellh.post-processor.vagrant` The Packer Vagrant post-processor takes a build and converts the artifact into -a valid [Vagrant](https://www.vagrantup.com) box, if it can. This lets you use +a valid [Vagrant](https://developer.hashicorp.com/vagrant) box, if it can. This lets you use Packer to automatically create arbitrarily complex Vagrant boxes, and is in fact how the official boxes distributed by Vagrant are created. @@ -120,8 +120,7 @@ Sometimes you may want to run several builds in a pipeline rather than running this post-processor inside a long-running Packer build. Here is an example of how to do this: - - +**JSON** ```json { @@ -150,8 +149,7 @@ how to do this: } ``` - - +**HCL2** ```hcl source "null" "example" { @@ -162,7 +160,7 @@ build { sources = [ "source.null.example" ] - post-processors { + post-processors { post-processor "artifice" { files = [ "output-virtualbox-iso/vbox-example-disk001.vmdk", @@ -172,13 +170,11 @@ build { post-processor "vagrant" { keep_input_artifact = true provider_override = "virtualbox" - } - } + } + } } ``` - - ## Provider-Specific Overrides @@ -190,8 +186,7 @@ post-processor lets you do this. Specify overrides within the `override` configuration by provider name: - - +**JSON** ```json { @@ -205,15 +200,12 @@ Specify overrides within the `override` configuration by provider name: } ``` - - +**HCL2** ```hcl ## This feature is not implemented in HCL. ``` - - In the example above, the compression level will be set to 1 except for VMware, where it will be set to 0. From 1527fb34da71786cb3d859ceec2cea2b2da54d0f Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:43:30 -0400 Subject: [PATCH 088/111] Managed by Terraform: Update go-validate.yml GitHub workflow --- .github/workflows/go-validate.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/go-validate.yml b/.github/workflows/go-validate.yml index 210ff848..7765a187 100644 --- a/.github/workflows/go-validate.yml +++ b/.github/workflows/go-validate.yml @@ -35,7 +35,7 @@ jobs: name: Go Mod Tidy steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: go mod tidy @@ -46,7 +46,7 @@ jobs: name: Lint check steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - uses: golangci/golangci-lint-action@639cd343e1d3b897ff35927a75193d57cfcba299 # v3.6.0 @@ -60,7 +60,7 @@ jobs: name: Gofmt check steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | @@ -78,7 +78,7 @@ jobs: name: Generate check steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 25c798b4c0e011d2b708a004121a8cde12490cf3 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:44:38 -0400 Subject: [PATCH 089/111] Managed by Terraform: Update notify-integration-release-via-tag github workflow --- ...notify-integration-release-via-manual.yaml | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml index 14a7664a..acf27259 100644 --- a/.github/workflows/notify-integration-release-via-manual.yaml +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -1,30 +1,24 @@ -name: Notify Integration Release (Manual) +name: Notify Integration Release (Tag) on: - workflow_dispatch: - inputs: - version: - description: "The release version (semver)" - default: 0.0.1 - required: false - branch: - description: "A branch or SHA" - default: 'main' - required: false + push: + tags: + - '*.*.*' # Proper releases + - '*.*.*-*' # Pre releases jobs: notify-release: runs-on: ubuntu-latest steps: - name: Checkout this repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: - ref: ${{ github.event.inputs.branch }} + ref: ${{ github.ref }} # Ensure that Docs are Compiled - - uses: actions/setup-go@v4 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - shell: bash run: make build-docs - shell: bash run: | - if [[ -z "$(git status -s)" ]]; then + if [[ -z "$$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." @@ -33,7 +27,7 @@ jobs: fi # Perform the Release - name: Checkout integration-release-action - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: repository: hashicorp/integration-release-action path: ./integration-release-action @@ -41,6 +35,6 @@ jobs: uses: ./integration-release-action with: integration_identifier: 'packer/hashicorp/vagrant' - release_version: ${{ github.event.inputs.version }} - release_sha: ${{ github.event.inputs.branch }} + release_version: ${{ github.ref_name }} + release_sha: ${{ github.ref }} github_token: ${{ secrets.GITHUB_TOKEN }} From 2a8dee080896e32b90856f939f2a532f6c6b0407 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:44:40 -0400 Subject: [PATCH 090/111] Managed by Terraform: Update go-test-windows.yml GitHub workflow --- .github/workflows/go-test-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go-test-windows.yml b/.github/workflows/go-test-windows.yml index a0ed1f00..63033e60 100644 --- a/.github/workflows/go-test-windows.yml +++ b/.github/workflows/go-test-windows.yml @@ -36,7 +36,7 @@ jobs: name: Windows Go tests steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From f6fbcc5fa06491c3200d6749e99f1c1210b25604 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:44:44 -0400 Subject: [PATCH 091/111] Managed by Terraform: Update go-test-linux.yml GitHub workflow --- .github/workflows/go-test-linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go-test-linux.yml b/.github/workflows/go-test-linux.yml index 00fb01e0..092890c1 100644 --- a/.github/workflows/go-test-linux.yml +++ b/.github/workflows/go-test-linux.yml @@ -36,7 +36,7 @@ jobs: name: Linux Go tests steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 22722a385693fe0fbdee3bcf1fc01a9fa782cdbf Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:44:49 -0400 Subject: [PATCH 092/111] Managed by Terraform: Update go-test-darwin.yml GitHub workflow --- .github/workflows/go-test-darwin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go-test-darwin.yml b/.github/workflows/go-test-darwin.yml index 30bf6c40..9b9f601c 100644 --- a/.github/workflows/go-test-darwin.yml +++ b/.github/workflows/go-test-darwin.yml @@ -36,7 +36,7 @@ jobs: name: Darwin Go tests steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - run: | From 8e30a55b88c42ed0a53ca829a630656035077f7d Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:46:14 -0400 Subject: [PATCH 093/111] Managed by Terraform: Update release.yml github workflow --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8c0734f4..0ec531d5 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -42,7 +42,7 @@ jobs: - name: Unshallow run: git fetch --prune --unshallow - name: Set up Go - uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 with: go-version: ${{ needs.get-go-version.outputs.go-version }} - name: Describe plugin From 6c87f5a0cc486653ea8ff9f930b24b232b0aace0 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Thu, 21 Sep 2023 15:46:51 -0400 Subject: [PATCH 094/111] Managed by Terraform: Update notify-integration-release-via-manual github workflow --- ...notify-integration-release-via-manual.yaml | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml index acf27259..865285ed 100644 --- a/.github/workflows/notify-integration-release-via-manual.yaml +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -1,9 +1,15 @@ -name: Notify Integration Release (Tag) +name: Notify Integration Release (Manual) on: - push: - tags: - - '*.*.*' # Proper releases - - '*.*.*-*' # Pre releases + workflow_dispatch: + inputs: + version: + description: "The release version (semver)" + default: 0.0.1 + required: false + branch: + description: "A branch or SHA" + default: 'main' + required: false jobs: notify-release: runs-on: ubuntu-latest @@ -11,7 +17,7 @@ jobs: - name: Checkout this repo uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: - ref: ${{ github.ref }} + ref: ${{ github.event.inputs.branch }} # Ensure that Docs are Compiled - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - shell: bash @@ -34,7 +40,7 @@ jobs: - name: Notify Release uses: ./integration-release-action with: - integration_identifier: 'packer/hashicorp/vagrant' - release_version: ${{ github.ref_name }} - release_sha: ${{ github.ref }} + integration_identifier: "packer/hashicorp/vagrant" + release_version: ${{ github.event.inputs.version }} + release_sha: ${{ github.event.inputs.branch }} github_token: ${{ secrets.GITHUB_TOKEN }} From 896d9217657be8aa1c70dfa41377edd81f97e4b6 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 22 Sep 2023 11:55:48 -0400 Subject: [PATCH 095/111] Delete .github/workflows/notify-integration-release-via-manual.yaml --- ...notify-integration-release-via-manual.yaml | 46 ------------------- 1 file changed, 46 deletions(-) delete mode 100644 .github/workflows/notify-integration-release-via-manual.yaml diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml deleted file mode 100644 index 865285ed..00000000 --- a/.github/workflows/notify-integration-release-via-manual.yaml +++ /dev/null @@ -1,46 +0,0 @@ -name: Notify Integration Release (Manual) -on: - workflow_dispatch: - inputs: - version: - description: "The release version (semver)" - default: 0.0.1 - required: false - branch: - description: "A branch or SHA" - default: 'main' - required: false -jobs: - notify-release: - runs-on: ubuntu-latest - steps: - - name: Checkout this repo - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - with: - ref: ${{ github.event.inputs.branch }} - # Ensure that Docs are Compiled - - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - - shell: bash - run: make build-docs - - shell: bash - run: | - if [[ -z "$$(git status -s)" ]]; then - echo "OK" - else - echo "Docs have been updated, but the compiled docs have not been committed." - echo "Run 'make build-docs', and commit the result to resolve this error." - exit 1 - fi - # Perform the Release - - name: Checkout integration-release-action - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - with: - repository: hashicorp/integration-release-action - path: ./integration-release-action - - name: Notify Release - uses: ./integration-release-action - with: - integration_identifier: "packer/hashicorp/vagrant" - release_version: ${{ github.event.inputs.version }} - release_sha: ${{ github.event.inputs.branch }} - github_token: ${{ secrets.GITHUB_TOKEN }} From 96e9571373edf3fa65512bbcf981efd5bb45b801 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Fri, 22 Sep 2023 11:57:10 -0400 Subject: [PATCH 096/111] Managed by Terraform: Update notify-integration-release-via-tag github workflow --- .github/workflows/notify-integration-release-via-tag.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/notify-integration-release-via-tag.yaml b/.github/workflows/notify-integration-release-via-tag.yaml index 6e8ecb45..acf27259 100644 --- a/.github/workflows/notify-integration-release-via-tag.yaml +++ b/.github/workflows/notify-integration-release-via-tag.yaml @@ -9,16 +9,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout this repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ github.ref }} # Ensure that Docs are Compiled - - uses: actions/setup-go@v4 + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - shell: bash run: make build-docs - shell: bash run: | - if [[ -z "$(git status -s)" ]]; then + if [[ -z "$$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." @@ -27,7 +27,7 @@ jobs: fi # Perform the Release - name: Checkout integration-release-action - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: repository: hashicorp/integration-release-action path: ./integration-release-action From 7f4a48956008200d2d0df052dd713b11cf5fb892 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Mon, 25 Sep 2023 11:35:17 -0400 Subject: [PATCH 097/111] Managed by Terraform: Update notify-integration-release-via-manual github workflow --- ...notify-integration-release-via-manual.yaml | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/notify-integration-release-via-manual.yaml diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml new file mode 100644 index 00000000..865285ed --- /dev/null +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -0,0 +1,46 @@ +name: Notify Integration Release (Manual) +on: + workflow_dispatch: + inputs: + version: + description: "The release version (semver)" + default: 0.0.1 + required: false + branch: + description: "A branch or SHA" + default: 'main' + required: false +jobs: + notify-release: + runs-on: ubuntu-latest + steps: + - name: Checkout this repo + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + with: + ref: ${{ github.event.inputs.branch }} + # Ensure that Docs are Compiled + - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 + - shell: bash + run: make build-docs + - shell: bash + run: | + if [[ -z "$$(git status -s)" ]]; then + echo "OK" + else + echo "Docs have been updated, but the compiled docs have not been committed." + echo "Run 'make build-docs', and commit the result to resolve this error." + exit 1 + fi + # Perform the Release + - name: Checkout integration-release-action + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + with: + repository: hashicorp/integration-release-action + path: ./integration-release-action + - name: Notify Release + uses: ./integration-release-action + with: + integration_identifier: "packer/hashicorp/vagrant" + release_version: ${{ github.event.inputs.version }} + release_sha: ${{ github.event.inputs.branch }} + github_token: ${{ secrets.GITHUB_TOKEN }} From 36dee079f79b9d614d8ccbeffdc5061056ee4e72 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Mon, 25 Sep 2023 16:35:12 -0400 Subject: [PATCH 098/111] Managed by Terraform: Update notify-integration-release-via-manual github workflow --- .github/workflows/notify-integration-release-via-manual.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml index 865285ed..5cae6c1b 100644 --- a/.github/workflows/notify-integration-release-via-manual.yaml +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -24,7 +24,7 @@ jobs: run: make build-docs - shell: bash run: | - if [[ -z "$$(git status -s)" ]]; then + if [[ -z "$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." From 387dec7c6d55acf20cd0b391d8c5ce4518983eeb Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Mon, 25 Sep 2023 16:36:05 -0400 Subject: [PATCH 099/111] Managed by Terraform: Update notify-integration-release-via-tag github workflow --- .github/workflows/notify-integration-release-via-tag.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/notify-integration-release-via-tag.yaml b/.github/workflows/notify-integration-release-via-tag.yaml index acf27259..acc8ad68 100644 --- a/.github/workflows/notify-integration-release-via-tag.yaml +++ b/.github/workflows/notify-integration-release-via-tag.yaml @@ -18,7 +18,7 @@ jobs: run: make build-docs - shell: bash run: | - if [[ -z "$$(git status -s)" ]]; then + if [[ -z "$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." From d995c1191ee4593d334b029b04a5307a2a116809 Mon Sep 17 00:00:00 2001 From: LeConTesteur Date: Sun, 20 Feb 2022 17:53:36 +0100 Subject: [PATCH 100/111] Support many files in Vagrant box for libvirt --- go.mod | 2 + go.sum | 1 + post-processor/vagrant/libvirt.go | 38 ++++++------ post-processor/vagrant/libvirt_test.go | 82 ++++++++++++++++++++++++++ 4 files changed, 105 insertions(+), 18 deletions(-) diff --git a/go.mod b/go.mod index 9f06ddc3..1e96f640 100644 --- a/go.mod +++ b/go.mod @@ -75,6 +75,7 @@ require ( github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d // indirect github.com/packer-community/winrmcp v0.0.0-20180921211025-c76d91c1e7db // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect + github.com/pkg/errors v0.9.1 // indirect github.com/pkg/sftp v1.13.2 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect @@ -98,6 +99,7 @@ require ( gopkg.in/square/go-jose.v2 v2.6.0 // indirect gopkg.in/yaml.v2 v2.3.0 // indirect gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect + gotest.tools v2.2.0+incompatible // indirect ) replace github.com/zclconf/go-cty => github.com/nywilken/go-cty v1.12.1 // added by packer-sdc fix as noted in github.com/hashicorp/packer-plugin-sdk/issues/187 diff --git a/go.sum b/go.sum index a12bdefd..c8062dcb 100644 --- a/go.sum +++ b/go.sum @@ -610,6 +610,7 @@ gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v22aHH28wwpauUhK9Oo= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= diff --git a/post-processor/vagrant/libvirt.go b/post-processor/vagrant/libvirt.go index 82dcb18c..4b1ebc4a 100644 --- a/post-processor/vagrant/libvirt.go +++ b/post-processor/vagrant/libvirt.go @@ -7,6 +7,7 @@ import ( "fmt" "path/filepath" "strconv" + "strings" packersdk "github.com/hashicorp/packer-plugin-sdk/packer" ) @@ -66,26 +67,28 @@ func (p *LibVirtProvider) KeepInputArtifact() bool { return false } func (p *LibVirtProvider) Process(ui packersdk.Ui, artifact packersdk.Artifact, dir string) (vagrantfile string, metadata map[string]interface{}, err error) { + disks := []map[string]string{} + format := artifact.State("diskType").(string) diskName := artifact.State("diskName").(string) - - // Copy the disk image into the temporary directory (as box.img) + disk_index := 0 for _, path := range artifact.Files() { - if filepath.Base(path) == diskName { - ui.Message(fmt.Sprintf("Copying from artifact: %s", path)) - dstPath := filepath.Join(dir, "box.img") - if err = CopyContents(dstPath, path); err != nil { - return - } + // DiskName is [vmName, vmName-1, vmName-2] + if !strings.HasPrefix(filepath.Base(path), diskName) { + continue + } + ui.Message(fmt.Sprintf("Copying from artifact: %s", path)) + dstDiskName := fmt.Sprintf("box_%d.img", disk_index) + dstPath := filepath.Join(dir, dstDiskName) + disks = append(disks, map[string]string{ + "path": dstDiskName, + "format": format, + }) + disk_index++ + if err = CopyContents(dstPath, path); err != nil { + return } } - format := artifact.State("diskType").(string) - origSize := sizeInMegabytes(artifact.State("diskSize").(string)) - size := origSize / 1024 // In MB, want GB - if origSize%1024 > 0 { - // Make sure we don't make the size smaller - size++ - } domainType := artifact.State("domainType").(string) // Convert domain type to libvirt driver @@ -101,9 +104,8 @@ func (p *LibVirtProvider) Process(ui packersdk.Ui, artifact packersdk.Artifact, // Create the metadata metadata = map[string]interface{}{ - "provider": "libvirt", - "format": format, - "virtual_size": size, + "provider": "libvirt", + "disks": disks, } vagrantfile = fmt.Sprintf(libvirtVagrantfile, driver) diff --git a/post-processor/vagrant/libvirt_test.go b/post-processor/vagrant/libvirt_test.go index 016b1d84..c4df3bdf 100644 --- a/post-processor/vagrant/libvirt_test.go +++ b/post-processor/vagrant/libvirt_test.go @@ -5,7 +5,11 @@ package vagrant import ( "fmt" + "os" "testing" + + packersdk "github.com/hashicorp/packer-plugin-sdk/packer" + "github.com/hashicorp/packer-plugin-sdk/tmp" ) func assertSizeInMegabytes(t *testing.T, size string, expected uint64) { @@ -70,3 +74,81 @@ func Test_sizeInMegabytes_WithExabytesUnit(t *testing.T) { assertSizeInMegabytes(t, "1234E", 1234*1024*1024*1024*1024) assertSizeInMegabytes(t, "1E", 1*1024*1024*1024*1024) } + +func Test_ManyFilesInArtifact(t *testing.T) { + p := new(LibVirtProvider) + ui := testUi() + type testCases struct { + Files []string + Format string + FilesExpected []string + } + testcases := []testCases{ + { + []string{}, + "qcow2", + []string{}, + }, + { + []string{"test"}, + "vmdk", + []string{"box_0.img"}, + }, + { + []string{"test", "test-1", "test-2"}, + "qcow2", + []string{"box_0.img", "box_1.img", "box_2.img"}, + }, + { + []string{"test", "efivars.fd", "test-1", "test-2"}, + "qcow2", + []string{"box_0.img", "box_1.img", "box_2.img"}, + }, + } + for _, tc := range testcases { + dir, _ := tmp.Dir("pkr") + defer os.RemoveAll(dir) + + artifactFiles := []string{} + for _, file := range tc.Files { + fullFilePath := fmt.Sprintf("%s/%s", dir, file) + artifactFiles = append(artifactFiles, fullFilePath) + _, err := os.Create(fullFilePath) + if err != nil { + t.Fatalf("Can't create %s : %s", fullFilePath, err) + } + } + + artifact := &packersdk.MockArtifact{ + FilesValue: artifactFiles, + StateValues: map[string]interface{}{ + "diskType": tc.Format, + "diskSize": "1234M", + "diskName": "test", + "domainType": "kvm", + }, + } + + dirProcess, _ := tmp.Dir("process") + defer os.RemoveAll(dirProcess) + _, metadata, err := p.Process(ui, artifact, dirProcess) + + if err != nil { + t.Fatalf("should not have error: %s", err) + } + metaDisks := metadata["disks"].([]map[string]string) + if len(tc.FilesExpected) != len(metaDisks) { + t.Errorf("Expected %d disks, but test returned %d", len(tc.FilesExpected), len(metaDisks)) + } + + for i, disk := range metaDisks { + if tc.FilesExpected[i] != disk["path"] { + t.Errorf("%s. Expected %#v", "Disk files order must be respected", tc.FilesExpected[i]) + } + if tc.Format != disk["format"] { + t.Errorf("%s. Expected %#v", "Disk files format must be present", tc.Format) + } + } + } + +} From 0ee2b0c9df54c98b37a260c70dd3947d5208e402 Mon Sep 17 00:00:00 2001 From: "hashicorp-copywrite[bot]" <110428419+hashicorp-copywrite[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 16:35:28 +0000 Subject: [PATCH 101/111] [COMPLIANCE] Add Copyright and License Headers --- .web-docs/metadata.hcl | 3 +++ .web-docs/scripts/compile-to-webdocs.sh | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.web-docs/metadata.hcl b/.web-docs/metadata.hcl index 0dee45d7..3fdc8148 100644 --- a/.web-docs/metadata.hcl +++ b/.web-docs/metadata.hcl @@ -1,3 +1,6 @@ +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # For full specification on the configuration of this file visit: # https://github.com/hashicorp/integration-template#metadata-configuration integration { diff --git a/.web-docs/scripts/compile-to-webdocs.sh b/.web-docs/scripts/compile-to-webdocs.sh index 51a72383..2fc710b8 100755 --- a/.web-docs/scripts/compile-to-webdocs.sh +++ b/.web-docs/scripts/compile-to-webdocs.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) HashiCorp, Inc. +# SPDX-License-Identifier: MPL-2.0 + # Converts the folder name that the component documentation file # is stored in into the integration slug of the component. From 5b453a10f222a1f007b546fda61436f64ebab8ed Mon Sep 17 00:00:00 2001 From: Chris Roberts Date: Wed, 27 Sep 2023 16:52:54 -0700 Subject: [PATCH 102/111] Architecture and file support Adds architecture support to the vagrant post-processor. Can be provided via configuration. If unset, it will automatically be defaulted to the builder host's detected architecture. File builder support was added to the vagrant post-processor to make testing easier. Architecture support added to the vagrant-cloud post-processor. Includes updating to the `v2` API which includes architecture support. Two new options are added: * `architecture` - architecture of the guest * `default_architecture` - backwards compatibility feature The new options are used when creating a provider, and the architecture value is used on the API path when preparing the upload. Small adjustment in the vagrant-cloud post-processor test so the artifact's `IdValue` matches the defined box's provider. This was simply done to provide a bit more clarity on the mocked API paths. --- docs/post-processors/vagrant-cloud.mdx | 21 +- docs/post-processors/vagrant.mdx | 10 +- .../vagrant-cloud/post-processor.go | 116 +++++--- .../vagrant-cloud/post-processor.hcl2spec.go | 4 + .../vagrant-cloud/post-processor_test.go | 248 ++++++++++++++++-- .../vagrant-cloud/step_create_provider.go | 22 +- .../vagrant-cloud/step_prepare_upload.go | 2 +- post-processor/vagrant/file.go | 34 +++ post-processor/vagrant/file_test.go | 12 + post-processor/vagrant/post-processor.go | 22 +- .../vagrant/post-processor.hcl2spec.go | 2 + post-processor/vagrant/post-processor_test.go | 35 +++ 12 files changed, 446 insertions(+), 82 deletions(-) create mode 100644 post-processor/vagrant/file.go create mode 100644 post-processor/vagrant/file_test.go diff --git a/docs/post-processors/vagrant-cloud.mdx b/docs/post-processors/vagrant-cloud.mdx index 6c24d395..dd200423 100644 --- a/docs/post-processors/vagrant-cloud.mdx +++ b/docs/post-processors/vagrant-cloud.mdx @@ -82,13 +82,20 @@ on Vagrant Cloud, as well as authentication and version information. - `vagrant_cloud_url` (string) - Override the base URL for Vagrant Cloud. This is useful if you're using Vagrant Private Cloud in your own network. - Defaults to `https://vagrantcloud.com/api/v1`. If this value is set to something + Defaults to `https://vagrantcloud.com/api/v2`. If this value is set to something other than the default then `access_token` can be left blank and no `Authorization` header will be added to requests sent by this post-processor. ### Optional +- `architecture` (string) - The architecture of the Vagrant box. This will be + detected from the box if possible by default. Supported values: amd64, i386, + arm, arm64, ppc64le, ppc64, mips64le, mips64, mipsle, mips, and s390x. -- `no_release` (string) - If set to true, does not release the version on +- `default_architecture` (string) - The architecture that should be flagged as + the default architecture for this provider. See the [Vagrant Cloud documentation](https://developer.hashicorp.com/vagrant/vagrant-cloud/boxes/architecture) + for more information. + +- `no_release` (boolean) - If set to true, does not release the version on Vagrant Cloud, making it active. You can manually release the version via the API or Web UI. Defaults to `false`. @@ -111,6 +118,7 @@ on Vagrant Cloud, as well as authentication and version information. Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: + - `Architecture`: The architecture of the Vagrant box - `Provider`: The Vagrant provider the box is for - `ArtifactId`: The ID of the input artifact. @@ -147,6 +155,7 @@ likely cause the Vagrant Cloud post-processor to error and fail. "variables": { "cloud_token": "{{ env `VAGRANT_CLOUD_TOKEN` }}", "version": "1.0.{{timestamp}}" + "architecture": "amd64", }, "post-processors": [ { @@ -164,7 +173,8 @@ likely cause the Vagrant Cloud post-processor to error and fail. "type": "vagrant-cloud", "box_tag": "hashicorp/precise64", "access_token": "{{user `cloud_token`}}", - "version": "{{user `version`}}" + "version": "{{user `version`}}", + "architecture": "{{user `architecture`}}" } ] ] @@ -190,6 +200,7 @@ build { access_token = "${var.cloud_token}" box_tag = "hashicorp/precise64" version = "${local.version}" + architecture = "${local.architecture}" } } } @@ -242,7 +253,8 @@ Additional files bundled by the Artifice post-processor will be ignored. "type": "vagrant-cloud", "box_tag": "myorganisation/mybox", "access_token": "{{user `cloud_token`}}", - "version": "0.1.0" + "version": "0.1.0", + "architecture": "amd64" } ] ] @@ -275,6 +287,7 @@ build { access_token = "${var.cloud_token}" box_tag = "myorganisation/mybox" version = "0.1.0" + architecture = "amd64" } } } diff --git a/docs/post-processors/vagrant.mdx b/docs/post-processors/vagrant.mdx index 78d364bd..12aa979f 100644 --- a/docs/post-processors/vagrant.mdx +++ b/docs/post-processors/vagrant.mdx @@ -38,6 +38,7 @@ providers. - Azure - DigitalOcean - Docker +- File - Hyper-V - LXC - Parallels @@ -64,6 +65,11 @@ However, if you want to configure things a bit more, the post-processor does expose some configuration options. The available options are listed below, with more details about certain options in following sections. +- `architecture` (string) - The architecture of the Vagrant box. This will be + set to the detected architecture of the builder host by default. Supported + values: amd64, i386, arm, arm64, ppc64le, ppc64, mips64le, mips64, mipsle, + mips, and s390x. + - `compression_level` (number) - An integer representing the compression level to use when creating the Vagrant box. Valid values range from 0 to 9, with 0 being no compression and 9 being the best compression. By default, @@ -87,12 +93,13 @@ more details about certain options in following sections. variables and template functions in this field. The following extra variables are also available in this engine: + - `Architecture`: The architecture of the Vagrant box - `Provider`: The Vagrant provider the box is for - `ArtifactId`: The ID of the input artifact. - `BuildName`: The name of the build. By default, the value of this config is - `packer_{{.BuildName}}_{{.Provider}}.box`. + `packer_{{.BuildName}}_{{.Provider}}_{{.Architecture}}.box`. - `provider_override` (string) - this option will override the internal logic that decides which Vagrant provider to set for a particular Packer builder's @@ -215,6 +222,7 @@ The available provider names are: - `aws` - `azure` - `digitalocean` +- `file` - `google` - `hyperv` - `parallels` diff --git a/post-processor/vagrant-cloud/post-processor.go b/post-processor/vagrant-cloud/post-processor.go index 69b6f103..3e59e471 100644 --- a/post-processor/vagrant-cloud/post-processor.go +++ b/post-processor/vagrant-cloud/post-processor.go @@ -37,15 +37,17 @@ var builtins = map[string]string{ "vagrant": "vagrant", } -const VAGRANT_CLOUD_URL = "https://vagrantcloud.com/api/v1" +const VAGRANT_CLOUD_URL = "https://vagrantcloud.com/api/v2" type Config struct { common.PackerConfig `mapstructure:",squash"` - Tag string `mapstructure:"box_tag"` - Version string `mapstructure:"version"` - VersionDescription string `mapstructure:"version_description"` - NoRelease bool `mapstructure:"no_release"` + Tag string `mapstructure:"box_tag"` + Version string `mapstructure:"version"` + VersionDescription string `mapstructure:"version_description"` + NoRelease bool `mapstructure:"no_release"` + Architecture string `mapstructure:"architecture"` + DefaultArchitecture string `mapstructure:"default_architecture"` AccessToken string `mapstructure:"access_token"` VagrantCloudUrl string `mapstructure:"vagrant_cloud_url"` @@ -150,8 +152,22 @@ func (p *PostProcessor) PostProcess(ctx context.Context, ui packersdk.Ui, artifa ui.Message("Warning: Using Vagrant Cloud token found in ATLAS_TOKEN. Please make sure it is correct, or set VAGRANT_CLOUD_TOKEN") } + var boxMetadata map[string]interface{} + var err error + + // Get the architecture + archName := p.config.Architecture + if archName == "" { + if boxMetadata, err = metadataFromVagrantBox(artifact.Files()[0]); err != nil { + return nil, false, false, err + } + if archName, err = getArchitecture(boxMetadata); err != nil { + return nil, false, false, err + } + } + // Determine the name of the provider for Vagrant Cloud, and Vagrant - providerName, err := getProvider(artifact.Id(), artifact.Files()[0], builtins[artifact.BuilderId()]) + providerName, err := getProvider(artifact.Id(), artifact.Files()[0], builtins[artifact.BuilderId()], boxMetadata) if err != nil { return nil, false, false, fmt.Errorf("error getting provider name: %s", err) } @@ -169,6 +185,7 @@ func (p *PostProcessor) PostProcess(ctx context.Context, ui packersdk.Ui, artifa } generatedData["ArtifactId"] = artifact.Id() generatedData["Provider"] = providerName + generatedData["Architecture"] = archName p.config.ctx.Data = generatedData boxDownloadUrl, err := interpolate.Render(p.config.BoxDownloadUrl, &p.config.ctx) @@ -192,6 +209,8 @@ func (p *PostProcessor) PostProcess(ctx context.Context, ui packersdk.Ui, artifa state.Put("providerName", providerName) state.Put("boxDownloadUrl", boxDownloadUrl) state.Put("boxChecksum", p.config.BoxChecksum) + state.Put("architecture", archName) + state.Put("defaultArchitecture", archName == p.config.DefaultArchitecture) // Build the steps steps := []multistep.Step{ @@ -219,18 +238,26 @@ func (p *PostProcessor) PostProcess(ctx context.Context, ui packersdk.Ui, artifa return NewArtifact(providerName, p.config.Tag), true, false, nil } -func getProvider(builderName, boxfile, builderId string) (providerName string, err error) { +func getArchitecture(metadata map[string]interface{}) (architectureName string, err error) { + if arch, ok := metadata["architecture"]; ok { + if architectureName, ok = arch.(string); ok && architectureName != "" { + return + } + } + + return "", fmt.Errorf("Error: Could not determine architecture from box metadata.json file") +} + +func getProvider(builderName, boxfile, builderId string, metadata map[string]interface{}) (string, error) { if builderId == "artifice" { // The artifice post processor cannot embed any data in the // supplied artifact so the provider information must be extracted // from the box file directly - providerName, err = providerFromVagrantBox(boxfile) - } else { - // For the Vagrant builder and Vagrant post processor the provider can - // be determined from information embedded in the artifact - providerName = providerFromBuilderName(builderName) + return providerFromVagrantBox(boxfile, metadata) } - return providerName, err + // For the Vagrant builder and Vagrant post processor the provider can + // be determined from information embedded in the artifact + return providerFromBuilderName(builderName), nil } // Converts a packer builder name to the corresponding vagrant provider @@ -255,56 +282,63 @@ func providerFromBuilderName(name string) string { // Returns the Vagrant provider the box is intended for use with by // reading the metadata file packaged inside the box -func providerFromVagrantBox(boxfile string) (providerName string, err error) { - log.Println("Attempting to determine provider from metadata in box file. This may take some time...") +func providerFromVagrantBox(boxfile string, metadata map[string]interface{}) (providerName string, err error) { + if len(metadata) == 0 { + if metadata, err = metadataFromVagrantBox(boxfile); err != nil { + return + } + } + + if prov, ok := metadata["provider"]; ok { + if providerName, ok = prov.(string); ok && providerName != "" { + return + } + } + + return "", fmt.Errorf("Error: Could not determine provider from box metadata.json file") +} + +// Returns the metadata found within the metadata file +// packaged inside the box +func metadataFromVagrantBox(boxfile string) (metadata map[string]interface{}, err error) { + log.Printf("Attempting to extract metadata in box file. This may take some time...") f, err := os.Open(boxfile) if err != nil { - return "", fmt.Errorf("Error attempting to open box file: %s", err) + return nil, fmt.Errorf("Error attempting to open box file: %w", err) } defer f.Close() // Vagrant boxes are gzipped tar archives ar, err := gzip.NewReader(f) if err != nil { - return "", fmt.Errorf("Error unzipping box archive: %s", err) + return nil, fmt.Errorf("Error unpacking box archive: %w", err) } tr := tar.NewReader(ar) - // The metadata.json file in the tar archive contains a 'provider' key - type metadata struct { - ProviderName string `json:"provider"` - } - md := metadata{} - - // Loop through the files in the archive and read the provider - // information from the boxes metadata.json file for { - hdr, err := tr.Next() + var hdr *tar.Header + hdr, err = tr.Next() if err == io.EOF { - if md.ProviderName == "" { - return "", fmt.Errorf("Error: Provider info was not found in box: %s", boxfile) - } - break + return nil, fmt.Errorf("Error: metadata.json file not found in box: %s", boxfile) } - if err != nil { - return "", fmt.Errorf("Error reading header info from box tar archive: %s", err) + + if err != nil && err != io.EOF { + return nil, fmt.Errorf("Error reading header info from box tar archive: %w", err) } if hdr.Name == "metadata.json" { - contents, err := ioutil.ReadAll(tr) + var contents []byte + contents, err = ioutil.ReadAll(tr) if err != nil { - return "", fmt.Errorf("Error reading contents of metadata.json file from box file: %s", err) + return nil, fmt.Errorf("Error reading contents of metadata.json file from box file: %w", err) } - err = json.Unmarshal(contents, &md) + err = json.Unmarshal(contents, &metadata) if err != nil { - return "", fmt.Errorf("Error parsing metadata.json file: %s", err) - } - if md.ProviderName == "" { - return "", fmt.Errorf("Error: Could not determine Vagrant provider from box metadata.json file") + return nil, fmt.Errorf("Error parsing metadata.json file: %w", err) } - break + + return } } - return md.ProviderName, nil } diff --git a/post-processor/vagrant-cloud/post-processor.hcl2spec.go b/post-processor/vagrant-cloud/post-processor.hcl2spec.go index 47e7238b..3b27a06a 100644 --- a/post-processor/vagrant-cloud/post-processor.hcl2spec.go +++ b/post-processor/vagrant-cloud/post-processor.hcl2spec.go @@ -22,6 +22,8 @@ type FlatConfig struct { Version *string `mapstructure:"version" cty:"version" hcl:"version"` VersionDescription *string `mapstructure:"version_description" cty:"version_description" hcl:"version_description"` NoRelease *bool `mapstructure:"no_release" cty:"no_release" hcl:"no_release"` + Architecture *string `mapstructure:"architecture" cty:"architecture" hcl:"architecture"` + DefaultArchitecture *string `mapstructure:"default_architecture" cty:"default_architecture" hcl:"default_architecture"` AccessToken *string `mapstructure:"access_token" cty:"access_token" hcl:"access_token"` VagrantCloudUrl *string `mapstructure:"vagrant_cloud_url" cty:"vagrant_cloud_url" hcl:"vagrant_cloud_url"` InsecureSkipTLSVerify *bool `mapstructure:"insecure_skip_tls_verify" cty:"insecure_skip_tls_verify" hcl:"insecure_skip_tls_verify"` @@ -54,6 +56,8 @@ func (*FlatConfig) HCL2Spec() map[string]hcldec.Spec { "version": &hcldec.AttrSpec{Name: "version", Type: cty.String, Required: false}, "version_description": &hcldec.AttrSpec{Name: "version_description", Type: cty.String, Required: false}, "no_release": &hcldec.AttrSpec{Name: "no_release", Type: cty.Bool, Required: false}, + "architecture": &hcldec.AttrSpec{Name: "architecture", Type: cty.String, Required: false}, + "default_architecture": &hcldec.AttrSpec{Name: "default_architecture", Type: cty.String, Required: false}, "access_token": &hcldec.AttrSpec{Name: "access_token", Type: cty.String, Required: false}, "vagrant_cloud_url": &hcldec.AttrSpec{Name: "vagrant_cloud_url", Type: cty.String, Required: false}, "insecure_skip_tls_verify": &hcldec.AttrSpec{Name: "insecure_skip_tls_verify", Type: cty.Bool, Required: false}, diff --git a/post-processor/vagrant-cloud/post-processor_test.go b/post-processor/vagrant-cloud/post-processor_test.go index 28411453..f0fefeaf 100644 --- a/post-processor/vagrant-cloud/post-processor_test.go +++ b/post-processor/vagrant-cloud/post-processor_test.go @@ -243,7 +243,150 @@ func TestPostProcessor_Configure_checkAccessTokenIsNotRequiredForOverridenVagran } } -func TestPostProcessor_PostProcess_badChecksumSpec(t *testing.T) { +func TestPostProcessor_PostProcess_missingArchitecture(t *testing.T) { + files := tarFiles{ + {"foo.txt", "This is a foo file"}, + {"bar.txt", "This is a bar file"}, + {"metadata.json", `{"provider": "virtualbox"}`}, + } + boxfile, err := createBox(files) + if err != nil { + t.Fatalf("%s", err) + } + defer os.Remove(boxfile.Name()) + + artifact := &packersdk.MockArtifact{ + BuilderIdValue: "mitchellh.post-processor.vagrant", + FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", + } + + stack := []stubResponse{ + stubResponse{StatusCode: 200, Method: "GET", Path: "/authenticate"}, + } + + server := newStackServer(stack) + defer server.Close() + + config := testGoodConfig() + config["vagrant_cloud_url"] = server.URL + + var p PostProcessor + + err = p.Configure(config) + if err != nil { + t.Fatalf("err: %s", err) + } + + _, _, _, err = p.PostProcess(context.Background(), testUi(), artifact) + if err == nil { + t.Fatal("Expected missing architecture error") + } + + if !strings.Contains(err.Error(), "not determine architecture") { + t.Fatalf("Unexpected error: %v", err) + } +} + +func TestPostProcessor_PostProcess_architectureConfigOnly(t *testing.T) { + files := tarFiles{ + {"foo.txt", "This is a foo file"}, + {"bar.txt", "This is a bar file"}, + {"metadata.json", `{"provider": "virtualbox"}`}, + } + boxfile, err := createBox(files) + if err != nil { + t.Fatalf("%s", err) + } + defer os.Remove(boxfile.Name()) + + artifact := &packersdk.MockArtifact{ + BuilderIdValue: "mitchellh.post-processor.vagrant", + FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", + } + + s := newStackServer([]stubResponse{stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-path"}}) + defer s.Close() + + stack := []stubResponse{ + stubResponse{StatusCode: 200, Method: "GET", Path: "/authenticate"}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, + stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, + stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "PUT", Path: "/box/hashicorp/precise64/version/0.5/release"}, + } + + server := newStackServer(stack) + defer server.Close() + config := testGoodConfig() + config["vagrant_cloud_url"] = server.URL + config["no_direct_upload"] = true + config["architecture"] = "amd64" + + var p PostProcessor + + err = p.Configure(config) + if err != nil { + t.Fatalf("err: %s", err) + } + _, _, _, err = p.PostProcess(context.Background(), testUi(), artifact) + if err != nil { + t.Fatalf("err: %s", err) + } +} + +func TestPostProcessor_PostProcess_architectureConfigOverrides(t *testing.T) { + files := tarFiles{ + {"foo.txt", "This is a foo file"}, + {"bar.txt", "This is a bar file"}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, + } + boxfile, err := createBox(files) + if err != nil { + t.Fatalf("%s", err) + } + defer os.Remove(boxfile.Name()) + + artifact := &packersdk.MockArtifact{ + BuilderIdValue: "mitchellh.post-processor.vagrant", + FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", + } + + s := newStackServer([]stubResponse{stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-path"}}) + defer s.Close() + + stack := []stubResponse{ + stubResponse{StatusCode: 200, Method: "GET", Path: "/authenticate"}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, + stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, + stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/arm64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "PUT", Path: "/box/hashicorp/precise64/version/0.5/release"}, + } + + server := newStackServer(stack) + defer server.Close() + config := testGoodConfig() + config["vagrant_cloud_url"] = server.URL + config["no_direct_upload"] = true + config["architecture"] = "arm64" + + var p PostProcessor + + err = p.Configure(config) + if err != nil { + t.Fatalf("err: %s", err) + } + _, _, _, err = p.PostProcess(context.Background(), testUi(), artifact) + if err != nil { + t.Fatalf("err: %s", err) + } +} + +func TestPostProcessor_PostProcess_noArchitecture(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, @@ -258,6 +401,51 @@ func TestPostProcessor_PostProcess_badChecksumSpec(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", + } + + stack := []stubResponse{ + stubResponse{StatusCode: 200, Method: "GET", Path: "/authenticate"}, + } + + server := newStackServer(stack) + defer server.Close() + config := testGoodConfig() + config["vagrant_cloud_url"] = server.URL + + var p PostProcessor + + err = p.Configure(config) + if err != nil { + t.Fatalf("err: %s", err) + } + _, _, _, err = p.PostProcess(context.Background(), testUi(), artifact) + + if err == nil { + t.Fatal("expected error") + } + + if !strings.Contains(err.Error(), "not determine architecture") { + t.Fatalf("Unexpected error: %s", err) + } +} + +func TestPostProcessor_PostProcess_badChecksumSpec(t *testing.T) { + files := tarFiles{ + {"foo.txt", "This is a foo file"}, + {"bar.txt", "This is a bar file"}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, + } + boxfile, err := createBox(files) + if err != nil { + t.Fatalf("%s", err) + } + defer os.Remove(boxfile.Name()) + + artifact := &packersdk.MockArtifact{ + BuilderIdValue: "mitchellh.post-processor.vagrant", + FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", } s := newStackServer([]stubResponse{stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-path"}}) @@ -268,7 +456,7 @@ func TestPostProcessor_PostProcess_badChecksumSpec(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, } server := newStackServer(stack) @@ -334,7 +522,7 @@ func TestPostProcessor_PostProcess_uploadsAndReleases(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider": "virtualbox"}`}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -345,6 +533,7 @@ func TestPostProcessor_PostProcess_uploadsAndReleases(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", } s := newStackServer([]stubResponse{stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-path"}}) @@ -355,7 +544,7 @@ func TestPostProcessor_PostProcess_uploadsAndReleases(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, stubResponse{StatusCode: 200, Method: "PUT", Path: "/box/hashicorp/precise64/version/0.5/release"}, } @@ -381,7 +570,7 @@ func TestPostProcessor_PostProcess_uploadsAndNoRelease(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider": "virtualbox"}`}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -392,6 +581,7 @@ func TestPostProcessor_PostProcess_uploadsAndNoRelease(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", } s := newStackServer([]stubResponse{stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-path"}}) @@ -402,7 +592,7 @@ func TestPostProcessor_PostProcess_uploadsAndNoRelease(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, } server := newStackServer(stack) @@ -437,7 +627,7 @@ func TestPostProcessor_PostProcess_directUpload5GFile(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider": "virtualbox"}`}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, } f, err := createBox(files) if err != nil { @@ -452,6 +642,7 @@ func TestPostProcessor_PostProcess_directUpload5GFile(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{f.Name()}, + IdValue: "virtualbox", } f.Close() @@ -467,7 +658,7 @@ func TestPostProcessor_PostProcess_directUpload5GFile(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload/direct"}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload/direct"}, stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-complete"}, } @@ -505,7 +696,7 @@ func TestPostProcessor_PostProcess_directUploadOver5GFile(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider": "virtualbox"}`}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, } f, err := createBox(files) if err != nil { @@ -521,6 +712,7 @@ func TestPostProcessor_PostProcess_directUploadOver5GFile(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{f.Name()}, + IdValue: "virtualbox", } s := newStackServer( @@ -535,7 +727,7 @@ func TestPostProcessor_PostProcess_directUploadOver5GFile(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload", Response: `{"upload_path": "` + s.URL + `/box-upload-path"}`}, } server := newStackServer(stack) @@ -561,7 +753,7 @@ func TestPostProcessor_PostProcess_uploadsDirectAndReleases(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider": "virtualbox"}`}, + {"metadata.json", `{"provider": "virtualbox", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -572,6 +764,7 @@ func TestPostProcessor_PostProcess_uploadsDirectAndReleases(t *testing.T) { artifact := &packersdk.MockArtifact{ BuilderIdValue: "mitchellh.post-processor.vagrant", FilesValue: []string{boxfile.Name()}, + IdValue: "virtualbox", } s := newStackServer( @@ -586,7 +779,7 @@ func TestPostProcessor_PostProcess_uploadsDirectAndReleases(t *testing.T) { stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64", Response: `{"tag": "hashicorp/precise64"}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/versions", Response: `{}`}, stubResponse{StatusCode: 200, Method: "POST", Path: "/box/hashicorp/precise64/version/0.5/providers", Response: `{}`}, - stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/id/upload/direct"}, + stubResponse{StatusCode: 200, Method: "GET", Path: "/box/hashicorp/precise64/version/0.5/provider/virtualbox/amd64/upload/direct"}, stubResponse{StatusCode: 200, Method: "PUT", Path: "/box-upload-complete"}, stubResponse{StatusCode: 200, Method: "PUT", Path: "/box/hashicorp/precise64/version/0.5/release"}, } @@ -636,7 +829,8 @@ func TestProviderFromBuilderName(t *testing.T) { func TestProviderFromVagrantBox_missing_box(t *testing.T) { // Bad: Box does not exist boxfile := "i_dont_exist.box" - _, err := providerFromVagrantBox(boxfile) + + _, err := providerFromVagrantBox(boxfile, map[string]interface{}{}) if err == nil { t.Fatal("Should have error as box file does not exist") } @@ -651,7 +845,7 @@ func TestProviderFromVagrantBox_empty_box(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatal("Should have error as box file is empty") } @@ -673,7 +867,7 @@ func TestProviderFromVagrantBox_gzip_only_box(t *testing.T) { } aw.Close() // Flush the gzipped contents to file - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as box file is a plain gzip file: %s", err) } @@ -688,7 +882,7 @@ func TestProviderFromVagrantBox_no_files_in_archive(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as box file has no contents") } @@ -707,7 +901,7 @@ func TestProviderFromVagrantBox_no_metadata(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as box file does not include metadata.json file") } @@ -727,7 +921,7 @@ func TestProviderFromVagrantBox_metadata_empty(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as box files metadata.json file is empty") } @@ -747,7 +941,7 @@ func TestProviderFromVagrantBox_metadata_bad_json(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as box files metadata.json file contains badly formatted JSON") } @@ -767,7 +961,7 @@ func TestProviderFromVagrantBox_metadata_no_provider_key(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as provider key/value pair is missing from boxes metadata.json file") } @@ -779,7 +973,7 @@ func TestProviderFromVagrantBox_metadata_provider_value_empty(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider":""}`}, + {"metadata.json", `{"provider":"", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -787,7 +981,7 @@ func TestProviderFromVagrantBox_metadata_provider_value_empty(t *testing.T) { } defer os.Remove(boxfile.Name()) - _, err = providerFromVagrantBox(boxfile.Name()) + _, err = providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err == nil { t.Fatalf("Should have error as value associated with 'provider' key in boxes metadata.json file is empty") } @@ -800,7 +994,7 @@ func TestProviderFromVagrantBox_metadata_ok(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider":"` + expectedProvider + `"}`}, + {"metadata.json", `{"provider":"` + expectedProvider + `", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -808,7 +1002,7 @@ func TestProviderFromVagrantBox_metadata_ok(t *testing.T) { } defer os.Remove(boxfile.Name()) - provider, err := providerFromVagrantBox(boxfile.Name()) + provider, err := providerFromVagrantBox(boxfile.Name(), map[string]interface{}{}) if err != nil { t.Fatalf("error getting provider from vagrant box %s:%v", boxfile.Name(), err) } @@ -821,7 +1015,7 @@ func TestGetProvider_artifice(t *testing.T) { files := tarFiles{ {"foo.txt", "This is a foo file"}, {"bar.txt", "This is a bar file"}, - {"metadata.json", `{"provider":"` + expectedProvider + `"}`}, + {"metadata.json", `{"provider":"` + expectedProvider + `", "architecture": "amd64"}`}, } boxfile, err := createBox(files) if err != nil { @@ -829,7 +1023,7 @@ func TestGetProvider_artifice(t *testing.T) { } defer os.Remove(boxfile.Name()) - provider, err := getProvider("", boxfile.Name(), "artifice") + provider, err := getProvider("", boxfile.Name(), "artifice", map[string]interface{}{}) if err != nil { t.Fatalf("error getting provider %s:%v", boxfile.Name(), err) } @@ -840,7 +1034,7 @@ func TestGetProvider_artifice(t *testing.T) { func TestGetProvider_other(t *testing.T) { expectedProvider := "virtualbox" - provider, _ := getProvider(expectedProvider, "foo.box", "other") + provider, _ := getProvider(expectedProvider, "foo.box", "other", map[string]interface{}{}) assert.Equal(t, expectedProvider, provider, "Error: Expected provider: '%s'. Got '%s'", expectedProvider, provider) t.Logf("Expected provider '%s'. Got provider '%s'", expectedProvider, provider) } diff --git a/post-processor/vagrant-cloud/step_create_provider.go b/post-processor/vagrant-cloud/step_create_provider.go index 751a981e..84d869d4 100644 --- a/post-processor/vagrant-cloud/step_create_provider.go +++ b/post-processor/vagrant-cloud/step_create_provider.go @@ -14,12 +14,14 @@ import ( ) type Provider struct { - Name string `json:"name"` - Url string `json:"url,omitempty"` - HostedToken string `json:"hosted_token,omitempty"` - UploadUrl string `json:"upload_url,omitempty"` - Checksum string `json:"checksum,omitempty"` - ChecksumType string `json:"checksum_type,omitempty"` + Name string `json:"name"` + Url string `json:"url,omitempty"` + HostedToken string `json:"hosted_token,omitempty"` + UploadUrl string `json:"upload_url,omitempty"` + Checksum string `json:"checksum,omitempty"` + ChecksumType string `json:"checksum_type,omitempty"` + Architecture string `json:"architecture,omitempty"` + DefaultArchitecture bool `json:"default_architecture,omitempty"` } type stepCreateProvider struct { @@ -34,10 +36,16 @@ func (s *stepCreateProvider) Run(ctx context.Context, state multistep.StateBag) providerName := state.Get("providerName").(string) downloadUrl := state.Get("boxDownloadUrl").(string) checksum := state.Get("boxChecksum").(string) + architecture := state.Get("architecture").(string) + defaultArchitecture := state.Get("defaultArchitecture").(bool) path := fmt.Sprintf("box/%s/version/%v/providers", box.Tag, version.Version) - provider := &Provider{Name: providerName} + provider := &Provider{ + Name: providerName, + Architecture: architecture, + DefaultArchitecture: defaultArchitecture, + } if downloadUrl != "" { provider.Url = downloadUrl diff --git a/post-processor/vagrant-cloud/step_prepare_upload.go b/post-processor/vagrant-cloud/step_prepare_upload.go index 8932a974..a058c5c3 100644 --- a/post-processor/vagrant-cloud/step_prepare_upload.go +++ b/post-processor/vagrant-cloud/step_prepare_upload.go @@ -43,7 +43,7 @@ func (s *stepPrepareUpload) Run(ctx context.Context, state multistep.StateBag) m } } - path := fmt.Sprintf("box/%s/version/%v/provider/%s/upload", box.Tag, version.Version, provider.Name) + path := fmt.Sprintf("box/%s/version/%v/provider/%s/%s/upload", box.Tag, version.Version, provider.Name, provider.Architecture) if !config.NoDirectUpload { path = path + "/direct" } diff --git a/post-processor/vagrant/file.go b/post-processor/vagrant/file.go new file mode 100644 index 00000000..3b4c7dd6 --- /dev/null +++ b/post-processor/vagrant/file.go @@ -0,0 +1,34 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + +package vagrant + +import ( + "fmt" + "path/filepath" + + packersdk "github.com/hashicorp/packer-plugin-sdk/packer" +) + +type FileProvider struct{} + +func (p *FileProvider) KeepInputArtifact() bool { + return false +} + +func (p *FileProvider) Process(ui packersdk.Ui, artifact packersdk.Artifact, dir string) (vagrantfile string, metadata map[string]interface{}, err error) { + // Create the metadata + metadata = map[string]interface{}{"provider": "file"} + + // Copy all of the original contents into the temporary directory + for _, path := range artifact.Files() { + ui.Message(fmt.Sprintf("Copying: %s", path)) + + dstPath := filepath.Join(dir, filepath.Base(path)) + if err = CopyContents(dstPath, path); err != nil { + return + } + } + + return +} diff --git a/post-processor/vagrant/file_test.go b/post-processor/vagrant/file_test.go new file mode 100644 index 00000000..b1822355 --- /dev/null +++ b/post-processor/vagrant/file_test.go @@ -0,0 +1,12 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: MPL-2.0 + +package vagrant + +import ( + "testing" +) + +func TestFileProvider_impl(t *testing.T) { + var _ Provider = new(FileProvider) +} diff --git a/post-processor/vagrant/post-processor.go b/post-processor/vagrant/post-processor.go index 532cdbdc..954cf9d1 100644 --- a/post-processor/vagrant/post-processor.go +++ b/post-processor/vagrant/post-processor.go @@ -15,6 +15,7 @@ import ( "io/ioutil" "os" "path/filepath" + "runtime" "strings" "text/template" @@ -44,6 +45,11 @@ var builtins = map[string]string{ "packer.post-processor.docker-import": "docker", "packer.post-processor.docker-tag": "docker", "packer.post-processor.docker-push": "docker", + "packer.file": "file", +} + +var vagrantArchMap = map[string]string{ + "386": "i386", } func availableProviders() []string { @@ -71,6 +77,7 @@ type Config struct { VagrantfileTemplate string `mapstructure:"vagrantfile_template"` VagrantfileTemplateGenerated bool `mapstructure:"vagrantfile_template_generated"` ProviderOverride string `mapstructure:"provider_override"` + Architecture string `mapstructure:"architecture"` ctx interpolate.Context } @@ -88,6 +95,13 @@ func (p *PostProcessor) Configure(raws ...interface{}) error { return err } + if p.config.Architecture == "" { + p.config.Architecture = runtime.GOARCH + if mappedArch, ok := vagrantArchMap[p.config.Architecture]; ok { + p.config.Architecture = mappedArch + } + } + if p.config.ProviderOverride != "" { validOverride := false providers := availableProviders() @@ -133,6 +147,7 @@ func (p *PostProcessor) PostProcessProvider(name string, provider Provider, ui p generatedData["ArtifactId"] = artifact.Id() generatedData["BuildName"] = config.PackerBuildName generatedData["Provider"] = name + generatedData["Architecture"] = config.Architecture config.ctx.Data = generatedData outputPath, err := interpolate.Render(config.OutputPath, &config.ctx) @@ -163,6 +178,9 @@ func (p *PostProcessor) PostProcessProvider(name string, provider Provider, ui p return nil, false, err } + // Add architecture to metadata + metadata["architecture"] = config.Architecture + // Write the metadata we got if err := WriteMetadata(dir, metadata); err != nil { return nil, false, err @@ -258,7 +276,7 @@ func (p *PostProcessor) configureSingle(c *Config, raws ...interface{}) error { // Defaults if c.OutputPath == "" { - c.OutputPath = "packer_{{ .BuildName }}_{{.Provider}}.box" + c.OutputPath = "packer_{{ .BuildName }}_{{ .Provider }}_{{ .Architecture }}.box" } found := false @@ -326,6 +344,8 @@ func providerForName(name string) Provider { return new(AzureProvider) case "docker": return new(DockerProvider) + case "file": + return new(FileProvider) default: return nil } diff --git a/post-processor/vagrant/post-processor.hcl2spec.go b/post-processor/vagrant/post-processor.hcl2spec.go index e5649c0d..3f846b13 100644 --- a/post-processor/vagrant/post-processor.hcl2spec.go +++ b/post-processor/vagrant/post-processor.hcl2spec.go @@ -25,6 +25,7 @@ type FlatConfig struct { VagrantfileTemplate *string `mapstructure:"vagrantfile_template" cty:"vagrantfile_template" hcl:"vagrantfile_template"` VagrantfileTemplateGenerated *bool `mapstructure:"vagrantfile_template_generated" cty:"vagrantfile_template_generated" hcl:"vagrantfile_template_generated"` ProviderOverride *string `mapstructure:"provider_override" cty:"provider_override" hcl:"provider_override"` + Architecture *string `mapstructure:"architecture" cty:"architecture" hcl:"architecture"` } // FlatMapstructure returns a new FlatConfig. @@ -54,6 +55,7 @@ func (*FlatConfig) HCL2Spec() map[string]hcldec.Spec { "vagrantfile_template": &hcldec.AttrSpec{Name: "vagrantfile_template", Type: cty.String, Required: false}, "vagrantfile_template_generated": &hcldec.AttrSpec{Name: "vagrantfile_template_generated", Type: cty.Bool, Required: false}, "provider_override": &hcldec.AttrSpec{Name: "provider_override", Type: cty.String, Required: false}, + "architecture": &hcldec.AttrSpec{Name: "architecture", Type: cty.String, Required: false}, } return s } diff --git a/post-processor/vagrant/post-processor_test.go b/post-processor/vagrant/post-processor_test.go index b11888ef..e5a4ee25 100644 --- a/post-processor/vagrant/post-processor_test.go +++ b/post-processor/vagrant/post-processor_test.go @@ -9,6 +9,7 @@ import ( "context" "io/ioutil" "os" + "runtime" "strings" "testing" @@ -67,6 +68,40 @@ func TestPostProcessorPrepare_compressionLevel(t *testing.T) { } } +func TestPostProcessorPrepare_architecture(t *testing.T) { + var p PostProcessor + + matchingArch := runtime.GOARCH + if mappedArch, ok := vagrantArchMap[matchingArch]; ok { + matchingArch = mappedArch + } + + // Default + c := testConfig() + delete(c, "architecture") + if err := p.Configure(c); err != nil { + t.Fatalf("err: %s", err) + } + + config := p.config + if config.Architecture != matchingArch { + t.Fatalf("bad: %#v", config.Architecture) + } + + // Set + c = testConfig() + c["architecture"] = "s390x" + if err := p.Configure(c); err != nil { + t.Fatalf("err: %s", err) + } + + config = p.config + if config.Architecture != "s390x" { + t.Fatalf("bad: %#v", config.Architecture) + } + +} + func TestPostProcessorPrepare_outputPath(t *testing.T) { var p PostProcessor From a48c62a893650e2c394814d5eb3d6260737a61c6 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Thu, 21 Sep 2023 15:37:21 -0400 Subject: [PATCH 103/111] makefile: remove old docs targets Since we moved the docs to integrations, we don't need to build the docs.zip file anymore, and to make it easier for plugin developers we move the logic for building the new .docs directory to the `generate' Makefile target. --- GNUmakefile | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index d9a8e031..ebb805e2 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -20,10 +20,6 @@ test: install-packer-sdc: ## Install packer sofware development command @go install github.com/hashicorp/packer-plugin-sdk/cmd/packer-sdc@${HASHICORP_PACKER_PLUGIN_SDK_VERSION} -ci-release-docs: install-packer-sdc - @packer-sdc renderdocs -src docs -partials docs-partials/ -dst docs/ - @/bin/sh -c "[ -d docs ] && zip -r docs.zip docs/" - plugin-check: install-packer-sdc build @packer-sdc plugin-check ${BINARY} @@ -34,9 +30,7 @@ generate: install-packer-sdc @go generate ./... packer-sdc renderdocs -src ./docs -dst ./.docs -partials ./docs-partials # checkout the .docs folder for a preview of the docs - -build-docs: install-packer-sdc - @if [ -d ".docs" ]; then rm -r ".docs"; fi + @rm -rf .docs @packer-sdc renderdocs -src "docs" -partials docs-partials/ -dst ".docs/" @./.web-docs/scripts/compile-to-webdocs.sh "." ".docs" ".web-docs" "hashicorp" @rm -r ".docs" From 41f659fe52c40d1e01c9a43f4f169c35a4556b30 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Thu, 21 Sep 2023 15:54:32 -0400 Subject: [PATCH 104/111] .github: remove ensure-docs-compiled workflow Since the workflow relies on the build-docs target existing in the Makefile to ensure we don't commit a change without calling it, and since we removed it in the previous commit to fold it in generate, we don't need it anymore so we can remove it. Since the `make generate' call is already required if modifying the docs, and we check that during validate, this is safe to remove. --- .github/workflows/ensure-docs-compiled.yaml | 22 --------------------- 1 file changed, 22 deletions(-) delete mode 100644 .github/workflows/ensure-docs-compiled.yaml diff --git a/.github/workflows/ensure-docs-compiled.yaml b/.github/workflows/ensure-docs-compiled.yaml deleted file mode 100644 index 74a174d3..00000000 --- a/.github/workflows/ensure-docs-compiled.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: Ensure Docs are Compiled -on: - push: -jobs: - ensure-docs-compiled: - runs-on: ubuntu-latest - steps: - - name: Checkout 🛎 - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - - uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 - - shell: bash - run: make build-docs - - shell: bash - run: | - if [[ -z "$(git status -s)" ]]; then - echo "OK" - else - echo "Docs have been updated, but the compiled docs have not been committed." - echo "Run 'make build-docs', and commit the result to resolve this error." - exit 1 - fi - From 7496b62cb8fbd4c2830e93762be38f31ef8b9cb0 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Thu, 21 Sep 2023 16:44:10 -0400 Subject: [PATCH 105/111] Makefile: remove superfluous renderdocs Since we have merged `build-docs' with `generate', we don't need to manually invoke `packer-sdc renderdocs' before the old build-docs. --- GNUmakefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index ebb805e2..3d028cc9 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -28,8 +28,6 @@ testacc: dev generate: install-packer-sdc @go generate ./... - packer-sdc renderdocs -src ./docs -dst ./.docs -partials ./docs-partials - # checkout the .docs folder for a preview of the docs @rm -rf .docs @packer-sdc renderdocs -src "docs" -partials docs-partials/ -dst ".docs/" @./.web-docs/scripts/compile-to-webdocs.sh "." ".docs" ".web-docs" "hashicorp" From af2558c3e22eefc64a80a5db6b9983989ea1c834 Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Tue, 26 Sep 2023 14:54:01 -0400 Subject: [PATCH 106/111] goreleaser: don't rely on ci-make-docs Since the ci-make-docs target is no longer part of the Makefile, we cannot rely on it for making the latest docs, and therefore we must remove that from the goreleaser file too. --- .goreleaser.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 1c48ac23..2a2e43ec 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -10,9 +10,6 @@ before: # We strongly recommend running tests to catch any regression before release. # Even though, this an optional step. - go test ./... - # As part of the release doc files are included as a separate deliverable for - # consumption by Packer.io. To include a separate docs.zip uncomment the following command. - - make ci-release-docs # Check plugin compatibility with required version of the Packer SDK - make plugin-check builds: From 46c9dbc3564596a3ac46eb241667d1748c6daa0b Mon Sep 17 00:00:00 2001 From: Lucas Bajolet Date: Tue, 26 Sep 2023 15:51:50 -0400 Subject: [PATCH 107/111] goreleaser: don't include docs.zip in release The docs.zip file should not be part of the release as it is no longer generated nor required to build the docs for a plugin. Keeping this in the releaser config caused the release to fail before the artifacts were updated, leading to a corrupted release. --- .goreleaser.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 2a2e43ec..f9dbc171 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -95,13 +95,6 @@ signs: args: ["sign", "--dearmor", "--file", "${artifact}", "--out", "${signature}"] artifacts: checksum signature: ${artifact}.sig -release: - # If you want to manually examine the release before its live, uncomment this line: - # draft: true - # As part of the release doc files are included as a separate deliverable for consumption by Packer.io. - # To include a separate docs.zip uncomment the extra_files config and the docs.zip command hook above. - extra_files: - - glob: ./docs.zip changelog: use: github-native From 1b3ea3575730867211d9e4710de730cdca4ad5fd Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 10 Oct 2023 14:26:34 -0400 Subject: [PATCH 108/111] Fix generated web-docs --- .../post-processor/vagrant-cloud/README.md | 21 +++++++++++++++---- .../post-processor/vagrant/README.md | 10 ++++++++- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/.web-docs/components/post-processor/vagrant-cloud/README.md b/.web-docs/components/post-processor/vagrant-cloud/README.md index 47e44311..1fd8d1e3 100644 --- a/.web-docs/components/post-processor/vagrant-cloud/README.md +++ b/.web-docs/components/post-processor/vagrant-cloud/README.md @@ -72,13 +72,20 @@ on Vagrant Cloud, as well as authentication and version information. - `vagrant_cloud_url` (string) - Override the base URL for Vagrant Cloud. This is useful if you're using Vagrant Private Cloud in your own network. - Defaults to `https://vagrantcloud.com/api/v1`. If this value is set to something + Defaults to `https://vagrantcloud.com/api/v2`. If this value is set to something other than the default then `access_token` can be left blank and no `Authorization` header will be added to requests sent by this post-processor. ### Optional +- `architecture` (string) - The architecture of the Vagrant box. This will be + detected from the box if possible by default. Supported values: amd64, i386, + arm, arm64, ppc64le, ppc64, mips64le, mips64, mipsle, mips, and s390x. -- `no_release` (string) - If set to true, does not release the version on +- `default_architecture` (string) - The architecture that should be flagged as + the default architecture for this provider. See the [Vagrant Cloud documentation](https://developer.hashicorp.com/vagrant/vagrant-cloud/boxes/architecture) + for more information. + +- `no_release` (boolean) - If set to true, does not release the version on Vagrant Cloud, making it active. You can manually release the version via the API or Web UI. Defaults to `false`. @@ -101,6 +108,7 @@ on Vagrant Cloud, as well as authentication and version information. Therefore, you may use user variables and template functions in this field. The following extra variables are also available in this engine: + - `Architecture`: The architecture of the Vagrant box - `Provider`: The Vagrant provider the box is for - `ArtifactId`: The ID of the input artifact. @@ -137,6 +145,7 @@ likely cause the Vagrant Cloud post-processor to error and fail. "variables": { "cloud_token": "{{ env `VAGRANT_CLOUD_TOKEN` }}", "version": "1.0.{{timestamp}}" + "architecture": "amd64", }, "post-processors": [ { @@ -154,7 +163,8 @@ likely cause the Vagrant Cloud post-processor to error and fail. "type": "vagrant-cloud", "box_tag": "hashicorp/precise64", "access_token": "{{user `cloud_token`}}", - "version": "{{user `version`}}" + "version": "{{user `version`}}", + "architecture": "{{user `architecture`}}" } ] ] @@ -180,6 +190,7 @@ build { access_token = "${var.cloud_token}" box_tag = "hashicorp/precise64" version = "${local.version}" + architecture = "${local.architecture}" } } } @@ -232,7 +243,8 @@ Additional files bundled by the Artifice post-processor will be ignored. "type": "vagrant-cloud", "box_tag": "myorganisation/mybox", "access_token": "{{user `cloud_token`}}", - "version": "0.1.0" + "version": "0.1.0", + "architecture": "amd64" } ] ] @@ -265,6 +277,7 @@ build { access_token = "${var.cloud_token}" box_tag = "myorganisation/mybox" version = "0.1.0" + architecture = "amd64" } } } diff --git a/.web-docs/components/post-processor/vagrant/README.md b/.web-docs/components/post-processor/vagrant/README.md index 13f11322..809821fb 100644 --- a/.web-docs/components/post-processor/vagrant/README.md +++ b/.web-docs/components/post-processor/vagrant/README.md @@ -22,6 +22,7 @@ providers. - Azure - DigitalOcean - Docker +- File - Hyper-V - LXC - Parallels @@ -48,6 +49,11 @@ However, if you want to configure things a bit more, the post-processor does expose some configuration options. The available options are listed below, with more details about certain options in following sections. +- `architecture` (string) - The architecture of the Vagrant box. This will be + set to the detected architecture of the builder host by default. Supported + values: amd64, i386, arm, arm64, ppc64le, ppc64, mips64le, mips64, mipsle, + mips, and s390x. + - `compression_level` (number) - An integer representing the compression level to use when creating the Vagrant box. Valid values range from 0 to 9, with 0 being no compression and 9 being the best compression. By default, @@ -71,12 +77,13 @@ more details about certain options in following sections. variables and template functions in this field. The following extra variables are also available in this engine: + - `Architecture`: The architecture of the Vagrant box - `Provider`: The Vagrant provider the box is for - `ArtifactId`: The ID of the input artifact. - `BuildName`: The name of the build. By default, the value of this config is - `packer_{{.BuildName}}_{{.Provider}}.box`. + `packer_{{.BuildName}}_{{.Provider}}_{{.Architecture}}.box`. - `provider_override` (string) - this option will override the internal logic that decides which Vagrant provider to set for a particular Packer builder's @@ -199,6 +206,7 @@ The available provider names are: - `aws` - `azure` - `digitalocean` +- `file` - `google` - `hyperv` - `parallels` From 9d83bf338b393f60574a3df3690b2a92d2e99edf Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 10 Oct 2023 14:32:12 -0400 Subject: [PATCH 109/111] Managed by Terraform: Update notify-integration-release-via-manual github workflow --- .github/workflows/notify-integration-release-via-manual.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/notify-integration-release-via-manual.yaml b/.github/workflows/notify-integration-release-via-manual.yaml index 5cae6c1b..11b8c63a 100644 --- a/.github/workflows/notify-integration-release-via-manual.yaml +++ b/.github/workflows/notify-integration-release-via-manual.yaml @@ -21,14 +21,14 @@ jobs: # Ensure that Docs are Compiled - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - shell: bash - run: make build-docs + run: make generate - shell: bash run: | if [[ -z "$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." - echo "Run 'make build-docs', and commit the result to resolve this error." + echo "Run 'make generate', and commit the result to resolve this error." exit 1 fi # Perform the Release From c8746d89e9427c92394798030d149203500e2b03 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 10 Oct 2023 14:32:14 -0400 Subject: [PATCH 110/111] Managed by Terraform: Update notify-integration-release-via-tag github workflow --- .github/workflows/notify-integration-release-via-tag.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/notify-integration-release-via-tag.yaml b/.github/workflows/notify-integration-release-via-tag.yaml index acc8ad68..ab47974b 100644 --- a/.github/workflows/notify-integration-release-via-tag.yaml +++ b/.github/workflows/notify-integration-release-via-tag.yaml @@ -15,14 +15,14 @@ jobs: # Ensure that Docs are Compiled - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 - shell: bash - run: make build-docs + run: make generate - shell: bash run: | if [[ -z "$(git status -s)" ]]; then echo "OK" else echo "Docs have been updated, but the compiled docs have not been committed." - echo "Run 'make build-docs', and commit the result to resolve this error." + echo "Run 'make generate', and commit the result to resolve this error." exit 1 fi # Perform the Release From 087811236a633279edc00c75c4cb929ddd74cf17 Mon Sep 17 00:00:00 2001 From: Wilken Rivera Date: Tue, 10 Oct 2023 14:47:43 -0400 Subject: [PATCH 111/111] Cut release 1.1.0 --- README.md | 2 +- version/version.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 767400fe..ad9721ef 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ Then, run [`packer init`](https://developer.hashicorp.com/packer/docs/commands/i packer { required_plugins { vagrant = { - version = ">= 1.0.2" + version = ">= 1.1.0" source = "github.com/hashicorp/vagrant" } } diff --git a/version/version.go b/version/version.go index 0c227b5a..5c0c5404 100644 --- a/version/version.go +++ b/version/version.go @@ -7,12 +7,12 @@ import "github.com/hashicorp/packer-plugin-sdk/version" var ( // Version is the main version number that is being run at the moment. - Version = "1.0.3" + Version = "1.1.0" // VersionPrerelease is A pre-release marker for the Version. If this is "" // (empty string) then it means that it is a final release. Otherwise, this // is a pre-release such as "dev" (in development), "beta", "rc1", etc. - VersionPrerelease = "dev" + VersionPrerelease = "" // PluginVersion is used by the plugin set to allow Packer to recognize // what version this plugin is.