Skip to content

Conversation

@deads2k
Copy link
Contributor

@deads2k deads2k commented Mar 6, 2015

More unit tests need to be added, but you can start to see the bones.

Before merging:

  • DNS changes in dc16de5
  • CA changes in Add cert validation option to requestheader #1246
  • re-enable integration dns test
  • standardize method receiver names
  • fix weird cert serial number problem
  • serialize master/node startup
  • fix certArgs location (not logically part of masterArgs or nodeArgs). Not worth the effort. We use those arguments to build the default cert locations. Rather than expand all the command line args, we'll just keep the certArgs.
  • godoc

Next list:

  • update integration tests to use the intermediate config
  • write out bootstrap roles and role bindings
  • Divide config into stanzas that represent the things we could spawn in independent processes
  • Mint users for router and registry
  • Validate config
  • make auth config
  • update usage for mint commands to list all the flags
  • update vagrant to mint certs ahead of time
  • resolve relative file references in the master/node config files relative to the files

@liggitt

@deads2k deads2k force-pushed the deads-intermediate-config branch from ecc5f22 to 1bffe4f Compare March 6, 2015 19:33
Copy link
Contributor

Choose a reason for hiding this comment

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

not sure what the behavior of user.GetName() is if UserFrom says it didn't exist

@deads2k deads2k force-pushed the deads-intermediate-config branch 2 times, most recently from 27e0546 to d860c65 Compare March 9, 2015 15:29
@deads2k
Copy link
Contributor Author

deads2k commented Mar 9, 2015

@liggitt don't freak out. I just had to burn the village to save it. /server is dead, long live /startconfig

Copy link
Contributor

Choose a reason for hiding this comment

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

don't make this look like a real username... make it "Unknown user" or something

@deads2k deads2k force-pushed the deads-intermediate-config branch 2 times, most recently from 418bb26 to 202ec27 Compare March 10, 2015 20:34
@deads2k
Copy link
Contributor Author

deads2k commented Mar 10, 2015

Alright, I'm happy with the shape of this now. It allows you to separately mint certs. All in one launch delegates down to master and node like you would expect. It can generate the fully specified for configs for you and read them back in.

I need to fix up unit tests and integration tests, but I think I like the final shape of things.

Next steps for future pulls:
[ ] write out bootstrap roles and role bindings

There was more to that list when I started it.....

@deads2k deads2k force-pushed the deads-intermediate-config branch 2 times, most recently from 3c2e61f to 6084f8e Compare March 11, 2015 13:32
@liggitt
Copy link
Contributor

liggitt commented Mar 11, 2015

List of things to make sure don't get dropped:

Suggestions for future pulls:

  • Divide config into stanzas that represent the things we could spawn in independent processes

Copy link
Contributor

Choose a reason for hiding this comment

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

It's super confusing for kubernetes.NodeConfig.NodeHost to not come from configapi.NodeConfig.NodeHost. I actually prefer NodeID, but can we name the other one BindHost?

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. NodeID versus Hostname is going to an upstream back down to us thing. Otherwise it's always confusing in some location or another.

@deads2k deads2k force-pushed the deads-intermediate-config branch from c2c4572 to 3f6741a Compare March 16, 2015 17:41
@deads2k
Copy link
Contributor Author

deads2k commented Mar 16, 2015

rebased

@liggitt
Copy link
Contributor

liggitt commented Mar 16, 2015

Seems like this should not complain about DNS, and should tell you a master and node config path are required:

$ openshift start --config-only=true
W0316 13:55:18.330605    7974 master_args.go:297] Unable to bind DNS on port 53 (you may need to run as root), using { %!s(int=8053) %!s(bool=false) %!s(bool=false) 0.0.0.0 tcp://0.0.0.0:8053 0.0.0.0 %!s(int=8053)} which will not resolve from all locations
F0316 13:55:18.331725    7974 start_allinone.go:75] open : no such file or directory

Copy link
Contributor

Choose a reason for hiding this comment

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

lowercase leading

@deads2k deads2k force-pushed the deads-intermediate-config branch 5 times, most recently from 1328d29 to 92efff0 Compare March 16, 2015 20:05
@deads2k
Copy link
Contributor Author

deads2k commented Mar 16, 2015

rebased

Copy link
Contributor

Choose a reason for hiding this comment

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

this won't resolve file references relative to the filepath :-/

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We'll get that working with kubernetes/kubernetes#5541. For now, the generated .kubeconfig files are self contained.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Using the upstream patch for now.

@liggitt
Copy link
Contributor

liggitt commented Mar 17, 2015

all-in-one isn't setting ClusterDNS on node args to the master IP

@liggitt
Copy link
Contributor

liggitt commented Mar 17, 2015

Opened deads2k#6 to improve DNS handling:

  • Bind defaults to 0.0.0.0:53 when simply writing out config
  • Never switch binding from :53 to :8053 at runtime, just print a warning about DNS not initializing
  • Integration tests have the ability to customize the DNS bind port for testing (to avoid needing to run as root)
  • Correctly wire master IP to node DNS IP in all-in-one
  • Correctly serialize dns IP in node config
  • Rename DNSAddress to DNSIP in node config
  • Print out the name of the running integration test before starting it so you can see which test is hanging
  • Fixed login integration test compile issue

@smarterclayton can you eyeball the DNS changes in my pull?

@deads2k deads2k force-pushed the deads-intermediate-config branch from e9a1f1d to 830ad88 Compare March 17, 2015 13:12
@liggitt
Copy link
Contributor

liggitt commented Mar 17, 2015

relative file references in the master/node config files get resolved relative to pwd, not relative to the file... feels like we should be consistent with kubeconfig (relative to config file), but can be done as a follow-up

@deads2k deads2k force-pushed the deads-intermediate-config branch from db754a4 to 6ef4884 Compare March 17, 2015 15:27
@deads2k deads2k force-pushed the deads-intermediate-config branch from 6ef4884 to 3038033 Compare March 17, 2015 15:31
@liggitt
Copy link
Contributor

liggitt commented Mar 17, 2015

LGTM

@liggitt
Copy link
Contributor

liggitt commented Mar 17, 2015

[merge]

@openshift-bot
Copy link
Contributor

continuous-integration/openshift-jenkins/merge SUCCESS (https://ci.openshift.redhat.com/jenkins/job/merge_pull_requests_openshift3/1196/) (Image: devenv-fedora_1061)

@openshift-bot
Copy link
Contributor

Evaluated for origin up to 3038033

openshift-bot pushed a commit that referenced this pull request Mar 17, 2015
@openshift-bot openshift-bot merged commit eaf15b4 into openshift:master Mar 17, 2015
@deads2k deads2k deleted the deads-intermediate-config branch March 31, 2015 18:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants