Merge pull request #67 from hashicorp/c-replace-circleci

Replace CircleCI with GitHub actions
diff --git a/.circleci/config.yml b/.circleci/config.yml
deleted file mode 100644
index 3bdb097..0000000
--- a/.circleci/config.yml
+++ /dev/null
@@ -1,36 +0,0 @@
-version: 2
-
-references:
-  images:
-    go: &GOLANG_IMAGE docker.mirror.hashicorp.services/circleci/golang:1.16
-  cache:
-    go-sum: &GO_SUM_CACHE_KEY go-sum-v1-{{ checksum "go.sum" }}
-  environment: &ENVIRONMENT
-    GO111MODULE: "on"
-
-jobs:
-  test:
-    docker:
-      - image: *GOLANG_IMAGE
-    environment: *ENVIRONMENT
-    working_directory: /go/src/github.com/hashicorp/terraform-json
-    steps:
-      - checkout
-      - restore_cache:
-          keys:
-            - *GO_SUM_CACHE_KEY
-      - run: make modules
-      - run: make tools
-      - run: make test-circle
-      - store_test_results:
-          path: test-results/
-      - save_cache:
-          key: *GO_SUM_CACHE_KEY
-          paths:
-            - /go/pkg/mod
-
-workflows:
-  version: 2
-  test:
-    jobs:
-      - test
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000..c541752
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,41 @@
+name: test
+
+on:
+  pull_request:
+    branches:
+      - main
+  push:
+    branches:
+      - main
+
+env:
+  GOPROXY: https://proxy.golang.org/
+
+jobs:
+  test:
+    runs-on: ${{ matrix.os }}
+    timeout-minutes: 10
+    strategy:
+      fail-fast: false
+      matrix:
+        os:
+          - ubuntu-latest
+          - macos-latest
+        go:
+          - 1.16
+          - 1.17
+          - 1.18
+          - 1.19
+    steps:
+      - name: Checkout
+        uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # https://github.com/actions/checkout/releases/tag/v3.3.0
+      - name: Set up Go
+        uses: actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # https://github.com/actions/setup-go/releases/tag/v3.5.0
+        with:
+          go-version: ${{ matrix.go }}
+      - name: Go mod download
+        run: go mod download -x
+      - name: Go mod verify
+        run: go mod verify
+      - name: Run tests
+        run: go test -v ./...
\ No newline at end of file
diff --git a/README.md b/README.md
index fea0ba2..4a9cd94 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,5 @@
 # terraform-json
 
-[![CircleCI](https://circleci.com/gh/hashicorp/terraform-json/tree/main.svg?style=svg)](https://circleci.com/gh/hashicorp/terraform-json/tree/main)
 [![GoDoc](https://godoc.org/github.com/hashicorp/terraform-json?status.svg)](https://godoc.org/github.com/hashicorp/terraform-json)
 
 This repository houses data types designed to help parse the data produced by