Update to the assisted-service at commit
a40422bdea617f16cbdb724d53619ca74773be45.
This repo now contains multiple go modules, so we have to add overrides
for the internal references to the api and models modules.
* Replace terraform modules with github.com/hashicorp/terraform-exec.
* Remove all terraform providers.
* Remove all unneeded replaces.
* Tidy up the replace stanzas so that it is more clear why each replace is needed.
* Remove and re-create all indirect requires to clean up ones that are
no longer needed.
The installer now generates spec v3.1 ignition config,
instead of v2.2 (and v2.4 for openstack) as before.
The v3.1 ignition config specification can be found at [1].
A detailed overview of the differences between specs v2 and v3 can be found at [2].
Notable differences are:
- the `Filesystem` identifier on ignition file configs no longer exists
- `Overwrite` now defaults to `false` (was `true` in spec v2), which is why
it is now set explicitly to keep the same behaviour.
- duplicate file configs are now prohibited, i.e. all contents and
all appendices must be defined in a single config.
- duplicate systemd unit configs are now prohibited, i.e. the content
and all dropins must be defined in a single config.
This commit:
- Bumps ignition to v2.3.0 with support for config spec v3.1.
- Bumps terraform-provider-ignition to v2.1.0.
Also adds downloading of the provider binary to `images/installer/Dockerfile.upi.ci`
which is necessary because the ignition v2/spec3 version from the
`community-terraform-providers/terraform-ignition-provider` fork is not
present in the provider registry that is maintained by Hashicorp and can
therefore not be pulled in automatically by terraform.
is not present in the
- Bumps machine-config-operator to b3b074ee9156
(latest commit at the time of this writing).
- Adds "github.com/clarketm/json" dependency for marshaling Ignition configs.
This is a dropin replacement for "encoding/json" that supports zero values of
structs with omittempty annotations when marshaling.
In effect, this will exclude empty pointer struct fields from the
marshaled data instead of inserting nil values into them, which do not
pass openAPI validation on fields that are supposed to contain e.g. strings.
The same library is used by machine-config-operator and ignition itself.
- Updates the vendor dir to make commit idempotent.
[1] https://github.com/coreos/ignition/blob/master/doc/configuration-v3_1.md
[2] https://github.com/coreos/ignition/blob/master/doc/migrating-configs.md#from-version-230-to-300
Co-authored-by: Vadim Rutkovsky <vrutkovs@redhat.com>
The newest version includes important features, like HTTP headers support,
that are required for the successful installation of OpenShift on OpenStack
without Swift.
Vendor openshift/machine-config-operator to have access to the MachineConfig type.
The MachineConfig type is used to send supplement the ignition config for machine
pools that have hyperthreading enabled.
This also adds some more packages from coreos/ignition.
No longer needed since we dropped the tectonic-system namespace.
I edited Gopkg.toml by hand and then ran:
$ dep ensure
using:
$ dep version
dep:
version : v0.5.0
build date :
git hash : 22125cf
go version : go1.10.3
go compiler : gc
platform : linux/amd64
features : ImportDuringSolve=false
Generated with:
$ rm -rf "$(go env GOPATH)/pkg/dep/sources"
# to avoid errors like "Unable to update checked out version: fatal: reference is not a tree"
# possibly [1]
$ dep ensure -update
using:
$ dep version
dep:
version : v0.5.0
build date :
git hash : 22125cf
go version : go1.10.3
go compiler : gc
platform : linux/amd64
features : ImportDuringSolve=false
I haven't reviewed all of these changes, but I want this to pull in
openshift/hive@b1cad987 (contrib/pkg/awstagdeprovision: Allow for OR
filters, 2018-10-18, openshift/hive#47).
[1]: https://github.com/golang/dep/issues/928#issuecomment-358349626
Catching up with c9b0e2ff (manifests: stop using kube core operator,
2018-10-08, #420).
Generated with:
$ dep ensure
using:
$ dep version
dep:
version : v0.5.0
build date :
git hash : 22125cf
go version : go1.10.3
go compiler : gc
platform : linux/amd64
features : ImportDuringSolve=false
This version implements the v2.2.0 config spec, which is needed in order
to customize the certificate authorities. There were a number of code
changes that needed to be made as well due to the change in types.