diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..0cb37bd --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,12 @@ +version: 2 + +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + + - package-ecosystem: "gomod" + directory: "/" + schedule: + interval: "weekly" \ No newline at end of file diff --git a/.github/workflows/actionlint.yml b/.github/workflows/actionlint.yml new file mode 100644 index 0000000..00a13c2 --- /dev/null +++ b/.github/workflows/actionlint.yml @@ -0,0 +1,19 @@ +name: actionlint + +on: + push: + paths: + - .github/** + +permissions: + contents: read + +jobs: + actionlint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - name: "Check GitHub workflow files" + uses: docker://docker.mirror.hashicorp.services/rhysd/actionlint:latest + with: + args: -color \ No newline at end of file diff --git a/.github/workflows/go-retryablehttp.yml b/.github/workflows/go-retryablehttp.yml new file mode 100644 index 0000000..9751243 --- /dev/null +++ b/.github/workflows/go-retryablehttp.yml @@ -0,0 +1,45 @@ +name: Build +on: + push: +jobs: + run-tests: + runs-on: ubuntu-latest + env: + TEST_RESULTS: "/tmp/test-results" + steps: + - name: Setup go + uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9 # v4.0.0 + with: + go-version: 1.14.2 + - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 + - run: mkdir -p "$TEST_RESULTS"/go-retryablyhttp + - name: restore_cache + uses: actions/cache@69d9d449aced6a2ede0bc19182fadc3a0a42d2b0 # v3.2.6 + with: + key: go-mod-v1-{{ checksum "go.sum" }} + restore-keys: go-mod-v1-{{ checksum "go.sum" }} + path: "/go/pkg/mod" + - run: go mod download + - name: Run go format + run: |- + files=$(go fmt ./...) + if [ -n "$files" ]; then + echo "The following file(s) do not conform to go fmt:" + echo "$files" + exit 1 + fi + - name: Install gotestsum + run: go get gotest.tools/gotestsum + - name: Run unit tests + run: |- + PACKAGE_NAMES=$(go list ./...) + # shellcheck disable=SC2086 # can't quote package list + gotestsum --junitfile "${TEST_RESULTS}"/go-retryablyhttp/gotestsum-report.xml -- $PACKAGE_NAMES + - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 + with: + path: "/tmp/test-results" + - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 + with: + path: "/tmp/test-results" +permissions: + contents: read diff --git a/CODEOWNERS b/CODEOWNERS new file mode 100644 index 0000000..f8389c9 --- /dev/null +++ b/CODEOWNERS @@ -0,0 +1 @@ +* @hashicorp/release-engineering \ No newline at end of file