Skip to content
This repository was archived by the owner on Feb 5, 2020. It is now read-only.

[WIP] frontend: Generate YAML cluster config instead of tfvars file#2884

Closed
kyoto wants to merge 29 commits intocoreos:masterfrom
kyoto:output-tectonic-config
Closed

[WIP] frontend: Generate YAML cluster config instead of tfvars file#2884
kyoto wants to merge 29 commits intocoreos:masterfrom
kyoto:output-tectonic-config

Conversation

@kyoto
Copy link
Contributor

@kyoto kyoto commented Feb 2, 2018

Change cluster-config.js to output the new Tectonic cluster config values and change the backend to write out a YAML config file instead of a tfvars file.

Update GUI unit tests and end-to-end tests to test the YAML config. Adds js-yaml as a dev dependency for the end-to-end tests.

cc @alexsomesan @spangenberg

@coreosbot
Copy link

Can one of the admins verify this patch?

@kyoto kyoto force-pushed the output-tectonic-config branch from f30027d to 5743f30 Compare February 2, 2018 13:21
@kyoto kyoto changed the base branch from master to ut2-integration February 6, 2018 06:58
@kyoto kyoto force-pushed the output-tectonic-config branch from 5743f30 to d236504 Compare February 6, 2018 08:28
@kyoto kyoto changed the title [WIP] frontend: Generate YAML cluster config instead of tfvars file frontend: Generate YAML cluster config instead of tfvars file Feb 6, 2018
@kyoto kyoto removed the do-not-merge label Feb 6, 2018
@kyoto
Copy link
Contributor Author

kyoto commented Feb 6, 2018

ok to test

@kyoto kyoto requested a review from squat February 6, 2018 11:22
* CLI MVP

* Kingpin bazel build

* Bazel: per-arch targets and top-level alias
* Re-add missing Bazel file for CLI package

* Missing EOL on last line
enxebre and others added 17 commits February 6, 2018 19:33
* installer/pkg: Add cluster config generator

This enables to generate the cluster configuration from an abstract
configuration which describes multiple tectonic clusters.

Not all configuration options have been mapped so far, this is work in progress.

* installer/pkg: Add terraform config generator

This enables to generate the terraform configuration from an abstract
configuration which describes multiple tectonic clusters.

Not all configuration options have been mapped so far, this is work in progress.

* installker/pkg: Parse and generate platform specific properties

* installer: Update dependencies

* installer/pkg/config-generator: Remove initial core config

* installer: Fix and generate bazel build files
platform/aws: move assets generation into own tf step
* platform/aws: add ncg ignition for workers

* platform/aws: add ncg ignition for masters

* platform/aws: add ignition for bootstrap master

* platform/aws: remove leader election code

* platform/aws: add ignition for etcd

* platform/aws: add support for the NCG

* terraform fmt
* add multistep support for the cli

* cli: Fix lint
0. Build tarball and smoke tests in previous Jenkins stage
1. Unzip the release tarball
2. Setup build folder and $PATH
3. Make rspec use release folder instead of git repository
PullSecret string `json:"pullSecret"`
Retry bool `json:"retry"`
Variables struct {
AWS map[string]interface{} `json:"AWS,omitempty"`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by convention, JSON is encoded in camel-case. Why is this using title casing?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like you said in your other comment, I'm just matching the existing JSON keys. I agree that they should be changed to camelCase though.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok thanks for confirming. We’ll need to follow up and fix this on the config-generator side of things

assert.FailNow(t, "TerraForm apply timed out")
}

// TODO: Update tests for new CLI
Copy link
Contributor

@squat squat Feb 19, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rather that comment these out, can you skip the tests so that their lack of implementation is noted in the test output? See https://golang.org/pkg/testing/#T.Skip

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@squat
Copy link
Contributor

squat commented Feb 19, 2018

Overall LGTM. needs rebase. I'm a little confused about the marshaling of json but if you're just keeping up with @spangenberg 's changes, then that shouldn't block this PR. We will need to fix json marshalling in his code generation

@kyoto kyoto force-pushed the output-tectonic-config branch from d236504 to 47874f8 Compare February 20, 2018 01:22
@kyoto kyoto force-pushed the output-tectonic-config branch from 47874f8 to bceb797 Compare February 20, 2018 07:01
@kyoto
Copy link
Contributor Author

kyoto commented Feb 21, 2018

ok to test

@kyoto kyoto changed the title frontend: Generate YAML cluster config instead of tfvars file [WIP] frontend: Generate YAML cluster config instead of tfvars file Feb 22, 2018
@kyoto
Copy link
Contributor Author

kyoto commented Feb 22, 2018

We will wait to merge this until after ut2-integration has merged into master.

@squat
Copy link
Contributor

squat commented Feb 28, 2018

we'll need to re-open this against master now that ut2 has merged.

@squat squat closed this Feb 28, 2018
@kyoto kyoto changed the base branch from ut2-integration to master March 1, 2018 01:44
@coreosbot
Copy link

Can one of the admins verify this patch?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants