Skip to content

Commit

Permalink
Use porter's magefile targets (#39)
Browse files Browse the repository at this point in the history
* Use porter's magefile targets

* Update to Go 1.17
* Switch from makefile to a magefile with porter's reusable mixin
targets
* Use porter v1.0.0-alpha.9

Signed-off-by: Carolyn Van Slyck <[email protected]>

* Pin to porter 1.0.0-alpha.9

Signed-off-by: Carolyn Van Slyck <[email protected]>
  • Loading branch information
carolynvs authored Feb 7, 2022
1 parent 4b5cf36 commit c7e9e6f
Show file tree
Hide file tree
Showing 12 changed files with 1,435 additions and 207 deletions.
10 changes: 5 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,20 @@ project.
---

* [Initial setup](#initial-setup)
* [Makefile explained](#makefile-explained)
* [Magefile explained](#magefile-explained)

---

# Initial setup

You need to have [porter installed](https://porter.sh/install) first. Then run
`make build install`. This will build and install the mixin into your porter
`mage build install`. This will build and install the mixin into your porter
home directory.

## Makefile explained
## Magefile explained

Here are the most common Makefile tasks
Here are the most common [Magefile](https://magefile.org) tasks:

* `build` builds both the runtime and client.
* `install` installs the mixin into **~/.porter/mixins**.
* `test-unit` runs the unit tests.
* `testUnit` runs the unit tests.
80 changes: 0 additions & 80 deletions Makefile

This file was deleted.

2 changes: 1 addition & 1 deletion REVIEWING.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Guide][review].

🧀💨

All mixins follow the same process for [cutting a release][release]. There is an additional step after tagging the release. When any documenation on the readme is changed, update the matching documenation page for the mixin on the porter website:
All mixins follow the same process for [cutting a release][release]. There is an additional step after tagging the release. When any documentation on the readme is changed, update the matching documenation page for the mixin on the porter website:

https://porter.sh/src/docs/content/mixins

Expand Down
23 changes: 8 additions & 15 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

trigger:
branches:
include:
include: # Only run builds for the main branch, and tagged releases such as v0.1.0
- refs/heads/main
- refs/tags/v*

Expand All @@ -15,29 +15,22 @@ pool:
steps:
- task: GoTool@0
inputs:
version: '1.16'
version: '1.17.6'
displayName: 'Install Go'

- script: |
set -xeuo pipefail
mkdir -p /home/vsts/go/bin/
echo "##vso[task.prependpath]/home/vsts/go/bin/"
displayName: 'Configure Go'
- script: go run mage.go ConfigureAgent
displayName: "Configure Agent"

- script: |
make build test-unit
displayName: 'Unit Test'
mage Test
displayName: 'Test'

- script: |
make xbuild-all
mage XBuildAll
displayName: 'Cross Compile'

- script: |
make test-integration
displayName: 'Integration Test'

- script: |
make publish
mage Publish
env:
GITHUB_TOKEN: $(GITHUB_TOKEN)
displayName: 'Publish'
Expand Down
114 changes: 111 additions & 3 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,11 +1,22 @@
module get.porter.sh/mixin/kubernetes

go 1.16
go 1.17

replace github.com/hashicorp/go-plugin => github.com/carolynvs/go-plugin v1.0.1-acceptstdin
// These are replace directives copied from porter
// When you use a newer version of Porter, if you run into trouble with go mod tidy
// Copy any additional replace directives from Porter's go.mod file
// They must match the replaces used by porter everything to compile
replace (

// expose-ast
// https://github.com/osteele/liquid/pull/59
github.com/osteele/liquid => github.com/carolynvs/liquid v1.2.5-0.20220131221838-2e107bef298f
// Fixes https://github.com/spf13/viper/issues/761
github.com/spf13/viper => github.com/getporter/viper v1.7.1-porter.2.0.20210514172839-3ea827168363
)

require (
get.porter.sh/porter v0.38.7
get.porter.sh/porter v1.0.0-alpha.9
github.com/Masterminds/semver v1.5.0
github.com/ghodss/yaml v1.0.0
github.com/pkg/errors v0.9.1
Expand All @@ -14,3 +25,100 @@ require (
github.com/xeipuuv/gojsonschema v1.2.0
gopkg.in/yaml.v2 v2.4.0
)

require (
github.com/BurntSushi/toml v0.3.1 // indirect
github.com/Masterminds/semver/v3 v3.1.1 // indirect
github.com/PaesslerAG/gval v1.0.0 // indirect
github.com/PaesslerAG/jsonpath v0.1.1 // indirect
github.com/PuerkitoBio/goquery v1.5.0 // indirect
github.com/andybalholm/brotli v1.0.0 // indirect
github.com/andybalholm/cascadia v1.0.0 // indirect
github.com/carolynvs/aferox v0.3.0 // indirect
github.com/carolynvs/magex v0.6.0 // indirect
github.com/cbroglie/mustache v1.0.1 // indirect
github.com/cenkalti/backoff/v4 v4.1.1 // indirect
github.com/cnabio/cnab-go v0.21.0 // indirect
github.com/cyberphone/json-canonicalization v0.0.0-20210303052042-6bc126869bf4 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dsnet/compress v0.0.1 // indirect
github.com/fatih/color v1.9.0 // indirect
github.com/fsnotify/fsnotify v1.4.9 // indirect
github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8 // indirect
github.com/gobuffalo/logger v1.0.4 // indirect
github.com/gobuffalo/packd v1.0.0 // indirect
github.com/gobuffalo/packr/v2 v2.8.1 // indirect
github.com/goccy/go-yaml v1.8.1 // indirect
github.com/golang/protobuf v1.5.2 // indirect
github.com/golang/snappy v0.0.4-0.20210608040537-544b4180ac70 // indirect
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.0.0 // indirect
github.com/jeremywohl/flatten v1.0.1 // indirect
github.com/karrick/godirwalk v1.16.1 // indirect
github.com/klauspost/compress v1.12.3 // indirect
github.com/klauspost/pgzip v1.2.4 // indirect
github.com/magefile/mage v1.11.0 // indirect
github.com/magiconair/properties v1.8.1 // indirect
github.com/markbates/errx v1.1.0 // indirect
github.com/markbates/oncer v1.0.0 // indirect
github.com/markbates/safe v1.0.1 // indirect
github.com/mattn/go-colorable v0.1.7 // indirect
github.com/mattn/go-isatty v0.0.12 // indirect
github.com/mattn/go-runewidth v0.0.7 // indirect
github.com/mholt/archiver/v3 v3.5.0 // indirect
github.com/mikefarah/yq/v3 v3.0.0-20201020025845-ccb718cd0f59 // indirect
github.com/mitchellh/mapstructure v1.3.3 // indirect
github.com/mmcdole/gofeed v1.0.0-beta2 // indirect
github.com/mmcdole/goxpp v0.0.0-20181012175147-0068e33feabf // indirect
github.com/nwaples/rardecode v1.1.0 // indirect
github.com/oklog/ulid v1.3.1 // indirect
github.com/olekukonko/tablewriter v0.0.4 // indirect
github.com/osteele/liquid v1.2.4 // indirect
github.com/osteele/tuesday v1.0.3 // indirect
github.com/pelletier/go-toml v1.9.1 // indirect
github.com/pierrec/lz4/v4 v4.0.3 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/qri-io/jsonpointer v0.1.1 // indirect
github.com/qri-io/jsonschema v0.2.2-0.20210723092138-2eb22ee8115f // indirect
github.com/sirupsen/logrus v1.8.1 // indirect
github.com/spf13/afero v1.5.1 // indirect
github.com/spf13/cast v1.3.1 // indirect
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/spf13/viper v1.7.0 // indirect
github.com/subosito/gotenv v1.2.0 // indirect
github.com/ulikunitz/xz v0.5.7 // indirect
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
go.opentelemetry.io/otel v1.1.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.1.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.1.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.1.0 // indirect
go.opentelemetry.io/otel/sdk v1.1.0 // indirect
go.opentelemetry.io/otel/trace v1.1.0 // indirect
go.opentelemetry.io/proto/otlp v0.9.0 // indirect
go.uber.org/atomic v1.5.0 // indirect
go.uber.org/multierr v1.3.0 // indirect
go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee // indirect
go.uber.org/zap v1.13.0 // indirect
golang.org/x/lint v0.0.0-20200302205851-738671d3881b // indirect
golang.org/x/mod v0.3.0 // indirect
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4 // indirect
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c // indirect
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b // indirect
golang.org/x/text v0.3.5 // indirect
golang.org/x/tools v0.0.0-20210106214847-113979e3529a // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
google.golang.org/genproto v0.0.0-20201110150050-8816d57aaa9a // indirect
google.golang.org/grpc v1.41.0 // indirect
google.golang.org/protobuf v1.27.1 // indirect
gopkg.in/ini.v1 v1.56.0 // indirect
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 // indirect
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
honnef.co/go/tools v0.0.1-2020.1.5 // indirect
)
Loading

0 comments on commit c7e9e6f

Please sign in to comment.