Skip to content
This repository has been archived by the owner on Jun 28, 2018. It is now read-only.

Ship the Delivery CLI in ChefDK #394

Merged
merged 4 commits into from May 22, 2015
Merged

Conversation

schisamo
Copy link
Contributor

After some discussions with the Delivery team this feels like the right place to package the delivery binary. From an end-user perspective it's delightful to not have to install yet another package to get the delivery-cli on your workstation. On the build node side most jobs that the delivery-cli executes rely on the other tools that ship in ChefDK.

A couple of things to note:

  • This is *nix ONLY ATM. The Delivery team will work on integrating the Windows support 馃敎.
  • Rust is needed as a build dependency only. Until the Omnibus framework has first class support for build deps (please see Add support for build dependencies聽chef/omnibus#483) we just remove Rust (and Cargo) from the install dir before running the health check or creating the final package.

Assuming everyone is happy with this approach I'll also update chef verify to be aware of the delivery binary.

/cc @chef/ociv @chef/delivery @chef/client-core @fnichol @tyler-ball @cwebberOps @adamhjk

source git: "https://github.com/chef/delivery-cli.git"

dependency "openssl"
dependency "rust"
Copy link
Contributor

Choose a reason for hiding this comment

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

Where does this end up in the build order? I'd like rust to be as early as possible so we cache it more often.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@danielsdeleo I'm not sure that caching Rust matters all that much as we are just extracting pre-compiled binaries.

@jaym
Copy link
Contributor

jaym commented May 19, 2015

wouldn't it be better to have rust as part of our builders instead of in here? For example, we don't install gcc (except on windows where we want to ship it) as part of the omnibus phase

@schisamo
Copy link
Contributor Author

@jdmundrawala That approach makes it very hard for project maintainers to rev the version of a build dependency like rust. It is also desirable to have ALL of a projects required dependencies (traditional or build) declared in a single location. If we introduce first class build deps into the Omnibus DSL we may declare things like GCC, @scotthain has toyed around with this very thing on our more esoteric Unix platforms.

# limitations under the License.
#

name "rust"
Copy link

Choose a reason for hiding this comment

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

That definition could arguably be made part of omnibus-software ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@wk8 Definitely. I plan on moving it once we work all the kinks out.

Copy link
Contributor

Choose a reason for hiding this comment

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

馃憤

@wk8
Copy link

wk8 commented May 19, 2015

One minor comment, otherwise LGTM

@MattVonVielen
Copy link

In light of us not tagging releases of delivery-cli, 馃憤

@christophermaier
Copy link
Contributor

馃憤

@tyler-ball
Copy link
Contributor

馃憤 LGTM!

@schisamo
Copy link
Contributor Author

I'll merge this once master is green again and I can get a test build all the way through.

@schisamo
Copy link
Contributor Author

This looks good from a CI perspective: http://manhattan.ci.chef.co/job/chefdk-build/339/

schisamo added a commit that referenced this pull request May 22, 2015
@schisamo schisamo merged commit 9ea9e33 into master May 22, 2015
@schisamo schisamo deleted the schisamo/chefdk-delivery-cli branch May 22, 2015 13:07
christophermaier pushed a commit that referenced this pull request Jun 2, 2015
This reverts commit 9ea9e33, reversing
changes made to 194f840.

Not quite ready to ship the delivery CLI in ChefDK... soon, but not
right now.
christophermaier added a commit that referenced this pull request Jun 5, 2015
Revert "Merge pull request #394 from chef/schisamo/chefdk-delivery-cli"
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
8 participants