Commit Graph

108 Commits (ba535d57f6e2eb338f6fbf121d6be2e6f9204136)

Author SHA1 Message Date
k8s-merge-robot 46e3611502 Merge pull request #29320 from thockin/makefile-fixes-and-speed
Automatic merge from submit-queue

Makefile fixes and speed

A few fixes that, together, make the 'make' experience smoother and more seamless.
    * `make clean all` works (@soltysh)
    * `make clean` does no spend 5 seconds loading deps just to remove them
    * deps building is faster

Fixes #28890
Ref #8830
2016-07-22 06:40:35 -07:00
Tim Hockin 5315fd6786 Make 'make clean' not depend on genfiles metadata
Previously even 'make clean' would first produce dependency information (slow)
and sinclude all the metadata, possibly restarting the make, before removing
the things it just did.

Now dependencies are only processed when something explicitly depends on them,
by calling 'make' on the rules around generated files, rather than sincluding
them.

Net result: make clean is faster and safer.  Additionally, bash tab-completion
for 'make' does not run the slow 'find' any more.
2016-07-21 09:31:33 -07:00
k8s-merge-robot 13b93ce656 Merge pull request #28363 from mikebrow/enable-debug-build-options
Automatic merge from submit-queue

adds source debug build options

See issue & discussion here: #28227

Enables source debugging the Kubernetes binaries with tools like delve by providing the user with the ability to provide debug build options to the glang compiler.

Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2016-07-20 21:48:27 -07:00
Tim Hockin 5930c57378 Remove Makefile undefined variables logic
It didn't do what I thought it did and was just noise.  Specifically, it only
kicks in for recursive `make` invocations.
2016-07-20 15:23:46 -07:00
Tim Hockin 8fb8f3d41b Cleanup unneeded deps on generated_files 2016-07-20 15:23:45 -07:00
Bryan Boreham b3b30ff01f Make the FOCUS= example do something
Since several of the test suite descriptions spell "Kubernetes" with a
capital K, but none match with a lower-case k.
2016-07-20 09:01:24 +01:00
k8s-merge-robot e576a2f760 Merge pull request #29017 from thockin/undelete-generated-files
Automatic merge from submit-queue

Undelete generated files

There's been enough people broken by not committing generated code, that we
should undo that until we have a proper client that is `go get` compatible.

This is temporary.

Fixes #28920
2016-07-15 16:27:14 -07:00
Tim Hockin ab29a25591 Prep to re-commit generated files 2016-07-15 10:27:14 -07:00
Buddha Prakash 5000e74664 Inject top level QoS cgroup creation in the Kubelet 2016-07-15 10:02:22 -07:00
Mike Brown 6ca905ac37 adds source debug build options
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2016-07-13 11:01:30 -05:00
Tim Hockin 0fc46afda6 Move make logic for generated files into a helper
This makes it a little easier to look at the main Makefile without getting
overwhelmed by code-generation stuff.
2016-07-12 21:52:54 -07:00
Tim Hockin 6ee6cc843a Add rules for all cmd/* subdirs
This is sort of gravy.  There's no good way to do this for arbitrary
directories because of the way Make works (we'd have to declare them all
PHONY).

If people hate using make directly we could wrap it in another level of
indirection, but I didn't yet.  E.g.

  build/make-all.sh -> make -> make-rules/all.sh -> go install

This would insulate people from 'make' atthe cost of custom build tools.  I
prefer being able to say 'make' and having it just work.
2016-07-12 21:52:54 -07:00
Tim Hockin f0ef726813 Make debugging Makefile a bit easier 2016-07-12 21:52:54 -07:00
Tim Hockin 6e516e1c8a make Jenkins pass 2016-07-12 21:52:54 -07:00
Tim Hockin 23bbf477f8 Document test procedures for Makefile 2016-07-12 21:52:54 -07:00
Tim Hockin 08546e5016 Run code-gen in a batch
This makes code generation MUCH MUCH faster.
2016-07-12 21:52:54 -07:00
Tim Hockin 9dd337d119 s/deep_copy/deepcopy/
Just a naming nit that was too hard to fixup-and-rebase.
2016-07-12 21:52:54 -07:00
Tim Hockin 1bd3918c15 Overhaul deps on generator tools
This forces a regeneration if the generation tools are rebuilt.

Also clean up Makefile a bit.
2016-07-12 21:52:54 -07:00
Tim Hockin a9f3ccdaa4 Fix Makefile deps to rebuild less often
This should only rebuild when ACTUALLY needed.
2016-07-12 21:52:54 -07:00
Tim Hockin 9613e15801 Make releases work 2016-07-12 21:52:54 -07:00
Tim Hockin 2a7b2fd37e Tighten up Makefile
Default SHELL and some other variables for max correctness.
2016-07-12 21:52:54 -07:00
Tim Hockin 9eb42ff108 Don't check in generated conversion code
Conversion is now generated by Makefile, on demand, rather than all at once.
Manually verified no net change in generated code.
2016-07-12 21:52:54 -07:00
Tim Hockin db42d52be4 Add a clean_generated make rule
Easier to clean up the mess when needed.
2016-07-12 21:52:54 -07:00
Tim Hockin 58441e8775 Don't check in generated deep-copy code
This mostly takes the previously checked in files and removes them, and moves
the generation to be on-demand instead of manual.  Manually verified no change
in generated output.
2016-07-12 21:52:54 -07:00
Tim Hockin faeef5c4ae Use make as the main build tool
This allows us to start building real dependencies into Makefile.

Leave old hack/* scripts in place but advise to use 'make'.  There are a few
rules that call things like 'go run' or 'build/*' that I left as-is for now.
2016-07-12 21:52:00 -07:00
David McMahon ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
Vishnu Kannan e515cc131d Add a makefile rule for ginkgo.
Signed-off-by: Vishnu Kannan <vishnuk@google.com>
2016-06-22 15:52:10 -07:00
Phillip Wittrock e94e1c6e3d Node e2e Makefile support for running remote tests against kubernetes-node-e2e-images.
Also includes other improvements:
- Makefile rule to run tests against remote instance using existing host or image
- Makefile will reuse an instance created from an image if it was not torn down
- Runner starts gce instances in parallel with building source
- Runner uses instance ip instead of hostname so that it doesn't need to resolve
- Runner supports cleaning up files and processes on an instance without stopping / deleting it
- Runner runs tests using `ginkgo` binary to support running tests in parallel
2016-06-08 07:31:54 -07:00
Wojciech Tyczynski febf158e0e Revert "Make Privileged pods node e2e use the framework" 2016-05-29 06:17:35 +02:00
Vishnu kannan 9f730d5345 Update node e2e "privileged pods" to use the framework.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-05-26 15:37:51 -07:00
Tim Hockin ddf5437b61 Remove Godeps/_workspace on `make clean`
I thought this was in the main PR.  My bad.
2016-05-11 08:07:04 -07:00
Tim Hockin cbf886c7f4 Convert everything to use vendor/ 2016-05-08 20:30:37 -07:00
goltermann 3fa6c6f6d9 Enable vet 2016-04-20 09:48:24 -07:00
Vishnu kannan 1e7e941dae Add an option to focus or skip tests in the node e2e makefile rule.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-04-07 10:22:22 -07:00
Jeff Grafton 51f70b6154 Revert "Disable verify-godep-licenses.sh in hack/verify-all.sh"
This reverts commit 991f7446ac.
2016-03-11 17:31:56 -08:00
Jeff Grafton 991f7446ac Disable verify-godep-licenses.sh in hack/verify-all.sh
Also reenable in Makefile so Travis still runs it.
2016-03-10 23:30:40 -08:00
Jeff Grafton 4242fd2ee1 Refactor hack/verify-all.sh and run almost all checks.
The reasons why checks are skipped is now more explicit. Output is also
improved a bit, giving both the check name and the runtime on the
pass/fail line.

This commit also makes `make verify`, Travis, and Shippable all use
hack/verify-all.sh instead of calling scripts explicitly, as we had been
doing on Jenkins. Everything should now be consistent.
2016-03-09 15:20:36 -08:00
k8s-merge-robot cdf456af0e Merge pull request #21520 from mikedanese/fastbuild
Auto commit by PR queue bot
2016-02-28 07:23:22 -08:00
k8s-merge-robot 067998e727 Merge pull request #21622 from pwittrock/nodee2essh
Auto commit by PR queue bot
2016-02-23 16:42:42 -08:00
Phillip Wittrock a3623c0c14 Refactor node e2e tests
- Add Makefile targets
- Start services in the test harness and connect locally
- Build test into binary and copy to remote host to start services
- Use tar to copy binaries to remote hosts to simplify design
2016-02-22 20:06:15 -08:00
Mike Danese 132c4271dc add linux fastbuild option to ./build/release.sh 2016-02-19 10:18:05 -08:00
Joe Finney 6f7182e500 Remove hack/e2e-test.sh in favor of hack/e2e.go. 2016-02-16 14:54:50 -08:00
Paul Morie 05bd107301 Add boilerplate checks for Makefiles 2016-02-03 18:35:26 -05:00
Chao Xu 3ec4cd423e linkchecker tool now visits the URL to determine if it's valid 2016-01-26 17:01:37 -08:00
Karl Isenberg 6125f539b6 Add hack/update-godep-licenses.sh to generate Godeps/LICENSES.md
- Add Godeps/LICENSES.md
- Add verify-godep-licenses to verify that Godeps/LICENSES.md is up to date
- Trigger verify-godep-licenses in the pre-commit hook only if the Godeps dir has changed
- Exclude verify-godep-licenses in verify-all
- Add verify-godep-licenses to make verify (used by travis)
- Add verify-godep-licenses to shippable
- Update dev docs to mention update-godep-licenses
2016-01-14 09:05:25 -08:00
Wojciech Tyczynski 07383950c3 Add scripts for updating autogenerated files. 2015-10-16 10:12:08 +02:00
Maciej Szulik 053b6731c0 Use make verify in Travis and Shippable instead of invoking a list of scripts by hand 2015-08-28 11:14:35 +02:00
Maciej Szulik 5b3ae7a0fb Added make verify to simplify running presubmit checks 2015-08-26 14:54:54 +02:00
Alex Crawford 79f14822a9 Plumb linker flags through from the Makefile 2015-08-05 20:42:54 -07:00
Filip Grzadkowski b9d7c8f6f5 Remove unneeded make rule name. 2015-03-16 12:04:36 +01:00
Joe Beda 5d33ce46cc Rework hack/ and build/ directories.
* Rewrite a bunch of the hack/ directory with modular reusable bash libraries.
* Have 'build/*' build on 'hack/*'.  The stuff in build now just runs hack/* in a docker container.
* Use a docker data container to enable faster incremental builds.
* Standardize output to _output/{local,dockerized}/bin/OS/ARCH/*.  This regularized placement makes cross compilation work.
* Move travis specific scripts under hack/travis

With new dockerized incremental builds, I can do a no-op `make quick-release` in ~30s.  This is a significant improvement.
2014-11-01 17:56:41 -07:00
derekwaynecarr 589af44aeb Add Makefile shortcut to release with skip tests 2014-10-21 15:27:53 -04:00
Joe Beda 5df3f54204 Hook 'build/make-clean.sh' into 'make clean' in Makefile 2014-10-11 07:34:22 -07:00
Joe Beda f7e22c104f Add a `release` target to `Makefile`
The rest of the reconciliation with new `build` methods will come later.
2014-10-10 12:36:57 -07:00
Tim Hockin f4592bde44 Make rules for integ and e2e tests 2014-10-09 21:02:37 -07:00
Tim Hockin 61dcb91885 Add a script to run 'go vet' 2014-10-07 17:54:38 -07:00
Tim Hockin 57239e32e8 Remove Godeps build artifacts on clean 2014-09-10 12:06:46 -07:00
Tim Hockin 51fd21c9e7 Add a Makefile
This is a very simple Makefile that just passes through to the current hack/*
scripts.  Only "make", "make test", and "make clean" are supported for now.
2014-08-29 14:56:27 -07:00