Compare commits

..

10 Commits

Author SHA1 Message Date
monopole
3d17503329 Demonstrate that #3377 is fixed. 2021-01-19 19:06:36 -08:00
Jeff Regan
d28ce28130 Merge pull request #3478 from kubernetes-sigs/testAgainst3.9.2
Test examples against v3.9.2 and v3.8.9
2021-01-17 11:14:46 -08:00
monopole
4f72faeecb Test examples against v3.9.2 and v3.8.9 2021-01-17 10:54:13 -08:00
Jeff Regan
29814b556b Update README.md 2021-01-17 10:25:19 -08:00
Jeff Regan
d94ed369fa Merge pull request #3477 from kubernetes-sigs/unpinEverything
Back to development mode; unpin the modules
2021-01-17 10:25:10 -08:00
monopole
0cf18987d7 Back to development mode; unpin the modules 2021-01-17 10:10:12 -08:00
Jeff Regan
a6374db2cb Update README.md 2021-01-17 10:09:08 -08:00
Jeff Regan
e98eada736 Merge pull request #3476 from kubernetes-sigs/pinToApi
Pin to api v0.7.2
2021-01-17 09:36:37 -08:00
monopole
8a65ece956 Pin to api v0.7.2 2021-01-17 09:19:41 -08:00
Jeff Regan
4cdc3b0bad Merge pull request #3475 from kubernetes-sigs/pinToCmdConfig
Pin to cmd/config v0.8.8
2021-01-17 09:09:20 -08:00
37 changed files with 616 additions and 109 deletions

View File

@@ -26,8 +26,8 @@ verify-kustomize: \
lint-kustomize \
test-unit-kustomize-all \
test-examples-kustomize-against-HEAD \
test-examples-kustomize-against-3.9.0 \
test-examples-kustomize-against-3.8.8
test-examples-kustomize-against-3.9.2 \
test-examples-kustomize-against-3.8.9
# The following target referenced by a file in
# https://github.com/kubernetes/test-infra/tree/master/config/jobs/kubernetes-sigs/kustomize
@@ -39,8 +39,8 @@ prow-presubmit-check: \
test-unit-cmd-all \
test-go-mod \
test-examples-kustomize-against-HEAD \
test-examples-kustomize-against-3.9.0 \
test-examples-kustomize-against-3.8.8
test-examples-kustomize-against-3.9.2 \
test-examples-kustomize-against-3.8.9
.PHONY: verify-kustomize-e2e
verify-kustomize-e2e: test-examples-e2e-kustomize
@@ -276,12 +276,12 @@ test-examples-kustomize-against-HEAD: $(MYGOBIN)/kustomize $(MYGOBIN)/mdrip
./hack/testExamplesAgainstKustomize.sh HEAD
.PHONY:
test-examples-kustomize-against-3.9.0: $(MYGOBIN)/mdrip
./hack/testExamplesAgainstKustomize.sh v3.9.0
test-examples-kustomize-against-3.9.2: $(MYGOBIN)/mdrip
./hack/testExamplesAgainstKustomize.sh v3.9.2
.PHONY:
test-examples-kustomize-against-3.8.8: $(MYGOBIN)/mdrip
./hack/testExamplesAgainstKustomize.sh v3.8.8
test-examples-kustomize-against-3.8.9: $(MYGOBIN)/mdrip
./hack/testExamplesAgainstKustomize.sh v3.8.9
# linux only.
# This is for testing an example plugin that

View File

@@ -24,3 +24,5 @@ require (
sigs.k8s.io/kustomize/kyaml v0.10.6
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/kyaml => ../kyaml

View File

@@ -599,8 +599,6 @@ mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b h1:DxJ5nJdkhDlLok9K6qO+5290kphD
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b/go.mod h1:2odslEg/xrtNQqCYg2/jCoyKnw3vv5biOc3JnIcYfL4=
mvdan.cc/unparam v0.0.0-20190720180237-d51796306d8f h1:Cq7MalBHYACRd6EesksG1Q8EoIAKOsiZviGKbOLIej4=
mvdan.cc/unparam v0.0.0-20190720180237-d51796306d8f/go.mod h1:4G1h5nDURzA3bwVMZIVpwbkw+04kSxk3rAtzlimaUJw=
sigs.k8s.io/kustomize/kyaml v0.10.6 h1:xUJxc/k8JoWqHUahaB8DTqY0KwEPxTbTGStvW8TOcDc=
sigs.k8s.io/kustomize/kyaml v0.10.6/go.mod h1:K9yg1k/HB/6xNOf5VH3LhTo1DK9/5ykSZO5uIv+Y/1k=
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e/go.mod h1:wWxsB5ozmmv/SG7nM11ayaAW51xMvak/t1r0CSlcokI=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q=

View File

@@ -0,0 +1,283 @@
// Copyright 2021 The Kubernetes Authors.
// SPDX-License-Identifier: Apache-2.0
package krusty_test
import (
"testing"
kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
)
func TestIssue3377(t *testing.T) {
th := kusttest_test.MakeHarness(t)
opts := th.MakeDefaultOptions()
th.WriteK(".", `
resources:
- service-a.yaml
- service-b.yaml
patchesJson6902:
- path: service-a-patch.yaml
target:
version: v1
group: networking.k8s.io
kind: Ingress
name: service-a
- path: service-b-patch.yaml
target:
version: v1
group: networking.k8s.io
kind: Ingress
name: service-b
vars:
- name: SERVICE_A_DNS_NAME
objref:
apiVersion: networking.k8s.io/v1
kind: Ingress
name: service-a
fieldref:
fieldpath: spec.rules[0].host
- name: SERVICE_B_DNS_NAME
objref:
apiVersion: networking.k8s.io/v1
kind: Ingress
name: service-b
fieldref:
fieldpath: spec.rules[0].host
`)
th.WriteF("service-a.yaml", `
apiVersion: apps/v1
kind: Deployment
metadata:
name: service-a
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/component: service-a
template:
metadata:
labels:
app.kubernetes.io/component: service-a
spec:
containers:
- image: repository/service-a:v1
imagePullPolicy: Always
name: service-b
ports:
- containerPort: 8080
env:
- name: REDIRECT_URI
value: "http://$(SERVICE_B_DNS_NAME):80/oauth_redir"
---
apiVersion: v1
kind: Service
metadata:
name: service-a
labels:
app.kubernetes.io/component: service-a
spec:
type: LoadBalancer
ports:
- port: 8080
selector:
app.kubernetes.io/component: service-a
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: service-a
spec:
rules:
- host: service-a.k8s.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: service-a
port:
number: 8080
`)
th.WriteF("service-a-patch.yaml", `
- op: replace
path: /spec/rules/0/host
value: new-service-a.k8s.com
`)
th.WriteF("service-b.yaml", `
apiVersion: apps/v1
kind: Deployment
metadata:
name: service-b
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/component: service-b
template:
metadata:
labels:
app.kubernetes.io/component: service-b
spec:
containers:
- image: repository/service-b:v1
imagePullPolicy: Always
name: service-b
ports:
- containerPort: 8080
env:
- name: REDIRECT_URI
value: "http://$(SERVICE_A_DNS_NAME):80/oauth_redir"
---
apiVersion: v1
kind: Service
metadata:
name: service-b
labels:
app.kubernetes.io/component: service-b
spec:
type: LoadBalancer
ports:
- port: 8080
selector:
app.kubernetes.io/component: service-b
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: service-b
spec:
rules:
- host: service-b.k8s.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: service-b
port:
number: 8080
`)
th.WriteF("service-b-patch.yaml", `
- op: replace
path: /spec/rules/0/host
value: new-service-b.k8s.com
`)
m := th.Run(".", opts)
th.AssertActualEqualsExpected(
m, `
apiVersion: apps/v1
kind: Deployment
metadata:
name: service-a
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/component: service-a
template:
metadata:
labels:
app.kubernetes.io/component: service-a
spec:
containers:
- env:
- name: REDIRECT_URI
value: http://new-service-b.k8s.com:80/oauth_redir
image: repository/service-a:v1
imagePullPolicy: Always
name: service-b
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: service-a
name: service-a
spec:
ports:
- port: 8080
selector:
app.kubernetes.io/component: service-a
type: LoadBalancer
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: service-a
spec:
rules:
- host: new-service-a.k8s.com
http:
paths:
- backend:
service:
name: service-a
port:
number: 8080
path: /
pathType: Prefix
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: service-b
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/component: service-b
template:
metadata:
labels:
app.kubernetes.io/component: service-b
spec:
containers:
- env:
- name: REDIRECT_URI
value: http://new-service-a.k8s.com:80/oauth_redir
image: repository/service-b:v1
imagePullPolicy: Always
name: service-b
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: service-b
name: service-b
spec:
ports:
- port: 8080
selector:
app.kubernetes.io/component: service-b
type: LoadBalancer
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: service-b
spec:
rules:
- host: new-service-b.k8s.com
http:
paths:
- backend:
service:
name: service-b
port:
number: 8080
path: /
pathType: Prefix
`)
}

View File

@@ -17,3 +17,5 @@ require (
k8s.io/apimachinery v0.18.10
sigs.k8s.io/kustomize/kyaml v0.10.6
)
replace sigs.k8s.io/kustomize/kyaml => ../../kyaml

View File

@@ -388,8 +388,6 @@ k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUc
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E=
sigs.k8s.io/kustomize/kyaml v0.10.6 h1:xUJxc/k8JoWqHUahaB8DTqY0KwEPxTbTGStvW8TOcDc=
sigs.k8s.io/kustomize/kyaml v0.10.6/go.mod h1:K9yg1k/HB/6xNOf5VH3LhTo1DK9/5ykSZO5uIv+Y/1k=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs=

View File

@@ -6,9 +6,11 @@ require (
github.com/rakyll/statik v0.1.7
github.com/spf13/cobra v1.0.0
github.com/stretchr/testify v1.4.0
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/kustomize/kyaml v0.10.6
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../api
replace sigs.k8s.io/kustomize/kyaml => ../../kyaml

View File

@@ -534,8 +534,6 @@ k8s.io/utils v0.0.0-20191114184206-e782cd3c129f/go.mod h1:sZAwmy6armz5eXlNoLmJcl
mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed/go.mod h1:Xkxe497xwlCKkIaQYRfC7CSLworTXY9RMqwhhCm+8Nc=
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b/go.mod h1:2odslEg/xrtNQqCYg2/jCoyKnw3vv5biOc3JnIcYfL4=
mvdan.cc/unparam v0.0.0-20190720180237-d51796306d8f/go.mod h1:4G1h5nDURzA3bwVMZIVpwbkw+04kSxk3rAtzlimaUJw=
sigs.k8s.io/kustomize/kyaml v0.10.6 h1:xUJxc/k8JoWqHUahaB8DTqY0KwEPxTbTGStvW8TOcDc=
sigs.k8s.io/kustomize/kyaml v0.10.6/go.mod h1:K9yg1k/HB/6xNOf5VH3LhTo1DK9/5ykSZO5uIv+Y/1k=
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e/go.mod h1:wWxsB5ozmmv/SG7nM11ayaAW51xMvak/t1r0CSlcokI=
sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=

View File

@@ -8,7 +8,7 @@ require (
github.com/spf13/cobra v1.0.0
github.com/spf13/pflag v1.0.5
k8s.io/client-go v0.18.10
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/kustomize/cmd/config v0.8.8
sigs.k8s.io/kustomize/kyaml v0.10.6
sigs.k8s.io/yaml v1.2.0
@@ -21,3 +21,7 @@ exclude (
)
replace sigs.k8s.io/kustomize/api => ../api
replace sigs.k8s.io/kustomize/cmd/config => ../cmd/config
replace sigs.k8s.io/kustomize/kyaml => ../kyaml

View File

@@ -622,10 +622,6 @@ k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89/go.mod h1:sZAwmy6armz5eXlNoLmJcl
mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed/go.mod h1:Xkxe497xwlCKkIaQYRfC7CSLworTXY9RMqwhhCm+8Nc=
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b/go.mod h1:2odslEg/xrtNQqCYg2/jCoyKnw3vv5biOc3JnIcYfL4=
mvdan.cc/unparam v0.0.0-20190720180237-d51796306d8f/go.mod h1:4G1h5nDURzA3bwVMZIVpwbkw+04kSxk3rAtzlimaUJw=
sigs.k8s.io/kustomize/cmd/config v0.8.8 h1:B0ecq4yYrD1zcigW7E9xOtv40D/87vokzlNzhkROxKM=
sigs.k8s.io/kustomize/cmd/config v0.8.8/go.mod h1:SUgpGFAeXIIJua6SIGsMgXpNCx5eiMbl7wNlm57KXt4=
sigs.k8s.io/kustomize/kyaml v0.10.6 h1:xUJxc/k8JoWqHUahaB8DTqY0KwEPxTbTGStvW8TOcDc=
sigs.k8s.io/kustomize/kyaml v0.10.6/go.mod h1:K9yg1k/HB/6xNOf5VH3LhTo1DK9/5ykSZO5uIv+Y/1k=
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e h1:4Z09Hglb792X0kfOBBJUPFEyvVfQWrYT/l8h5EKA6JQ=
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e/go.mod h1:wWxsB5ozmmv/SG7nM11ayaAW51xMvak/t1r0CSlcokI=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/annotationstransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/builtin/configmapgenerator
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -2,7 +2,7 @@ module sigs.k8s.io/kustomize/plugin/builtin/hashtransformer
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml

View File

@@ -5,7 +5,7 @@ go 1.15
require (
github.com/imdario/mergo v0.3.5
github.com/pkg/errors v0.8.1
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/imagetagtransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/labeltransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -4,7 +4,7 @@ go 1.15
require (
github.com/pkg/errors v0.8.1
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
)
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/namespacetransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -5,10 +5,10 @@ go 1.15
require (
github.com/evanphx/json-patch v4.5.0+incompatible
github.com/pkg/errors v0.8.1
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -4,7 +4,7 @@ go 1.15
require (
github.com/stretchr/testify v1.4.0
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -4,10 +4,10 @@ go 1.15
require (
github.com/evanphx/json-patch v4.5.0+incompatible
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/prefixsuffixtransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/replicacounttransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/builtin/secretgenerator
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -3,10 +3,10 @@ module sigs.k8s.io/kustomize/plugin/builtin/valueaddtransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)
replace sigs.k8s.io/kustomize/api => ../../../api
replace sigs.k8s.io/kustomize/kyaml => ../../../kyaml
replace sigs.k8s.io/kustomize/api => ../../../api

View File

@@ -2,7 +2,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/bashedconfigmap
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/kyaml => ../../../../kyaml

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/calvinduplicator
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -4,7 +4,7 @@ go 1.15
require (
github.com/pkg/errors v0.8.1
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -2,7 +2,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/printpluginenv
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/kyaml => ../../../../kyaml

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/secretsfromdatabase
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -2,7 +2,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/sedtransformer
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/kyaml => ../../../../kyaml

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/someservicegenerator
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -4,7 +4,7 @@ go 1.15
require (
github.com/pkg/errors v0.8.1
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -2,7 +2,7 @@ module sigs.k8s.io/kustomize/plugin/someteam.example.com/v1/validator
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/kyaml => ../../../../kyaml

View File

@@ -2,6 +2,6 @@ module sigs.k8s.io/kustomize/plugin/untested/v1/gogetter
go 1.15
require sigs.k8s.io/kustomize/api v0.7.1
require sigs.k8s.io/kustomize/api v0.7.2
replace sigs.k8s.io/kustomize/api => ../../../../api

View File

@@ -3,7 +3,7 @@ module sigs.k8s.io/kustomize/plugin/untested/v1/replacementtransformer
go 1.15
require (
sigs.k8s.io/kustomize/api v0.7.1
sigs.k8s.io/kustomize/api v0.7.2
sigs.k8s.io/yaml v1.2.0
)

View File

@@ -40,22 +40,67 @@ kustomize openapi info
Instructions on how to get a new OpenAPI sample can be found in the
[OpenAPI Readme].
#### Establish clean state
#### Make some helper functions
```
cd ~/gopath/src/sigs.k8s.io/kustomize
git fetch upstream
git co master
git rebase upstream/master
function createBranch {
branch=$1
echo "Making branch $branch : \"$title\""
git branch -D $branch # delete if it exists
git co -b $branch
git commit -a -m "$title"
git push -f origin $branch
}
```
make prow-presubmit-check >& /tmp/k.txt; echo $?
# The exit code should be zero; if not examine /tmp/k.txt
```
function createPr {
gh pr create --title "$title" --body "ALLOW_MODULE_SPAN" --base master
}
```
```
function refreshMaster {
git co master
git fetch upstream
git rebase upstream/master
}
```
```
function testKustomizeRepo {
make prow-presubmit-check >& /tmp/k.txt
local code=$?
if [ $code -ne 0 ]; then
echo "**** FAILURE ******************"
tail -n /tmp/k.txt
else
echo "LGTM"
fi
}
```
#### Install the release tool
```
(cd cmd/gorepomod; go install .)
( cd cmd/gorepomod; go install . )
```
#### Authenticate to github using [gh](https://github.com/cli/cli)
```
# Use your own token
GITHUB_TOKEN=deadbeefdeadbeef
echo $GITHUB_TOKEN | gh auth login --scopes repo --with-token
```
#### Establish clean state
```
cd ~/gopath/src/sigs.k8s.io/kustomize
refreshMaster
testKustomizeRepo
```
#### Release `kyaml`
@@ -63,97 +108,276 @@ make prow-presubmit-check >& /tmp/k.txt; echo $?
```
gorepomod release kyaml --doIt
```
Undraft the release on the [kustomize repo release page].
Note the version:
```
versionKyaml=v0.10.6 # EDIT THIS!
```
Undraft the release on the [kustomize repo release page],
make sure the version number is what you expect.
#### Release [`cli-utils`](https://github.com/kubernetes-sigs/cli-utils)
```
cd ../cli-utils
```
# Determine which version of kyaml you want at
# https://github.com/kubernetes-sigs/kustomize/releases
#
# Pin ./go.mod to that version, e.g.:
go mod edit -require sigs.k8s.io/kustomize/kyaml@v0.9.1
Pin to the new version of kyaml you just released:
```
go mod edit -require sigs.k8s.io/kustomize/kyaml@$versionKyaml
```
# Test it
Test it
```
make test
make test-e2e
```
# Merge these changes to upstream (make a PR, merge it)
Create the PR
```
title="Pin cli-utils to kyaml $versionKyaml"
createBranch pinKyaml
createPr
```
git fetch upstream
git co master
git rebase upstream/master
Run local tests while GH runs tests in the cloud:
```
testKustomizeRepo
```
# Release cli-utils
Wait for tests to pass, then merge the PR:
```
gh pr status
gh pr merge -m
```
Get back on master and do paranoia test:
```
refreshMaster
testKustomizeRepo
```
Release it:
```
gorepomod release {top} --doIt
```
Note the version:
```
versionCliUtils=v0.22.4 # EDIT THIS!
```
#### Release `cmd/config`
```
cd ../kustomize
```
# Pin to the most recent kyaml.
Pin to the most recent kyaml.
```
gorepomod pin kyaml --doIt
```
# Determine which version of cli-utils you want at
# https://github.com/kubernetes-sigs/cli-utils/releases
#
# Pin cmd/config/go.mod to that version, e.g.:
(cd cmd/config; go mod edit -require=sigs.k8s.io/cli-utils@v0.20.4)
Pin to the version of cli-utils you just created
([releases](https://github.com/kubernetes-sigs/cli-utils/releases))
# Test it.
make prow-presubmit-check >& /tmp/k.txt; echo $?
```
(cd cmd/config; \
go mod edit -require=sigs.k8s.io/cli-utils@$versionCliUtils)
```
# Make a PR and merge these changes.
Test it.
# Release it.
```
testKustomizeRepo
```
Create the PR:
```
title="Pin to kyaml $versionKyaml and cli-utils $versionCliUtils"
createBranch pinToKyamlAndCliUtils
createPr
```
Run local tests while GH runs tests in the cloud:
```
testKustomizeRepo
```
Wait for tests to pass, then merge the PR:
```
gh pr status
gh pr merge -m
```
Get back on master and do paranoia test:
```
refreshMaster
testKustomizeRepo
```
Release it:
```
gorepomod release cmd/config --doIt
```
Undraft the release on the [kustomize repo release page].
Note the version:
```
versionCmdConfig=v0.8.8 # EDIT THIS!
```
Undraft the release on the [kustomize repo release page],
make sure the version number is what you expect.
#### Release `api` (the kustomize API, used by the CLI)
Pin to the new cmd/config:
```
gorepomod pin cmd/config --doIt
# Merge these changes.
```
Create the PR:
```
title="Pin to cmd/config $versionCmdConfig"
createBranch pinToCmdConfig
createPr
```
Run local tests while GH runs tests in the cloud:
```
testKustomizeRepo
```
Wait for tests to pass, then merge the PR:
```
gh pr status # rinse, repeat
gh pr merge -m
```
Get back on master and do paranoia test:
```
refreshMaster
testKustomizeRepo
```
Release it:
```
gorepomod release api --doIt
```
Undraft the release on the [kustomize repo release page].
Note the version:
```
versionApi=v0.7.2 # EDIT THIS!
```
Undraft the release on the [kustomize repo release page],
make sure the version number is what you expect.
#### Release the kustomize CLI
Pin to the new API:
```
gorepomod pin api --doIt
# Merge these changes.
```
gorepomod release kustomize --doIt
Create the PR:
```
title="Pin to api $versionApi"
createBranch pinToApi
createPr
```
Run local tests while GH runs tests in the cloud:
```
testKustomizeRepo
```
Wait for tests to pass, then merge the PR:
```
gh pr status # rinse, repeat
gh pr merge -m
```
Get back on master and do paranoia test:
```
refreshMaster
testKustomizeRepo
```
Release it:
```
gorepomod release kustomize --doIt
```
Undraft the release on the [kustomize repo release page].
### Important
[installation instructions]: https://kubectl.docs.kubernetes.io/installation/kustomize/binaries/
* Follow the [installation instructions] to install your new
releas and make sure it reports the expected version number.
If not, something is very wrong.
* Visit the [release page] and edit the release notes as desired.
#### Unpin everything
Go back into development mode, so current code in-repo
depends on current code in-repo.
Go back into development mode, where all modules depend on in-repo code:
```
gorepomod unpin api --doIt
gorepomod unpin api --doIt
gorepomod unpin cmd/config --doIt
gorepomod unpin kyaml --doIt
# Merge these changes.
gorepomod unpin kyaml --doIt
```
Visit the [release page] and edit the release notes as desired;
this should be automated, and descriptions in PR's should
be standardized to make automation possible.
See kubebuilder project.
Create the PR:
```
title="Back to development mode; unpin the modules"
createBranch unpinEverything
createPr
```
Run local tests while GH runs tests in the cloud:
```
testKustomizeRepo
```
Wait for tests to pass, then merge the PR:
```
gh pr status # rinse, repeat
gh pr merge -m
```
Get back on master and do paranoia test:
```
refreshMaster
testKustomizeRepo
```
### Finally
[Makefile]: https://github.com/kubernetes-sigs/kustomize/blob/master/Makefile
Edit the `prow-presubmit-target` in the [Makefile]
to test examples against your new release.
----
----
Older notes follow:
## Public Modules