Commit Graph

257 Commits

Author SHA1 Message Date
Chuanying Du ac70751767 Change git credential from cache to store and also add test for
username/password case.

For cache to store change:
* By default, cache only last 900 seconds, gitsync will break after
  that. See https://git-scm.com/docs/git-credential-cache.
* The test won't work with cache since the test don't have access to
  the default unix socket location; XDG_CACHE_HOME override also can
  pre-create a socket in advance.
* `store` put the credential into a file, much easier to debug than cache.
* Considering anyone have access to the pod already able to get the
  credential via environment variables or yaml configs, so put it in
  file won't make it less secure.

For the new password test:
1. askpass_git.sh provided to simulate a git with password challenge.
2. Need and only need to similate "clone" action, need to bypass other
  actions like config/credential setup.
3. See `credential fill` is the official git action to ask password,
  see https://git-scm.com/docs/git-credential.

This change resolved issue #196.
2019-12-18 09:55:01 -08:00
Kubernetes Prow Robot a2a8f72733
Merge pull request #211 from thockin/log-cleanups
Log before running commands, not after
2019-11-27 23:33:03 -08:00
Kubernetes Prow Robot b56f73ba85
Merge pull request #209 from thockin/master
Clean up docs
2019-11-27 23:31:03 -08:00
Kubernetes Prow Robot 39de601ec4
Merge pull request #210 from thockin/rename-cleanups
Cleanups: rename vars and funcs, comments
2019-11-27 23:29:03 -08:00
Tim Hockin 0057fac0a4 Clean up docs 2019-11-26 14:12:47 -08:00
Tim Hockin eac27f505e Log before actions 2019-11-26 13:45:18 -08:00
Tim Hockin fc700779be Log chmod operation 2019-11-26 13:45:18 -08:00
Tim Hockin e97eff010f trivial comments 2019-11-26 13:42:15 -08:00
Tim Hockin 287a0e5464 var renames for readability 2019-11-26 13:42:15 -08:00
Tim Hockin 415303f900 Rename for clarity 2019-11-26 13:42:15 -08:00
Kubernetes Prow Robot 5d7622e6ec
Merge pull request #208 from thockin/code-move-cleanups
Code move cleanups
2019-11-26 01:05:10 -08:00
Kubernetes Prow Robot cbad455c2b
Merge pull request #205 from thockin/git-cat-file
Make revIsHash a bit safer
2019-11-23 02:41:49 -08:00
Kubernetes Prow Robot 97a5488a26
Merge pull request #207 from thockin/flag-help
Better flag help strings
2019-11-23 02:39:50 -08:00
Tim Hockin 74d3e9daab move code for readability 2019-11-21 21:57:53 -08:00
Tim Hockin d980b6d9d6 Move prune logic for cohesion 2019-11-21 21:57:53 -08:00
Tim Hockin dc5bdcb461 Better flag help strings 2019-11-21 21:47:15 -08:00
Kubernetes Prow Robot 147a5f5fff
Merge pull request #206 from thockin/cleanups
Rename snake_case variable
2019-11-21 14:31:30 -08:00
Kubernetes Prow Robot e394e55b0e
Merge pull request #204 from thockin/go-1.13
Bump Go to 1.13
2019-11-21 10:03:28 -08:00
Tim Hockin 1b295ad217 Make revIsHash a bit safer 2019-11-21 08:55:30 -08:00
Tim Hockin f433b067ca Rename snake_case variable 2019-11-21 08:48:36 -08:00
Tim Hockin 4f9273b91c Bump Go to 1.13 2019-11-21 08:39:08 -08:00
Kubernetes Prow Robot 4905dc62a5
Merge pull request #203 from thockin/e2e-various
e2e: various fixes and cleanups
2019-11-20 02:15:20 -08:00
Tim Hockin 27b43e624b e2e: move flags and better errors 2019-11-19 07:44:02 -08:00
Tim Hockin 2b11e078b0 Remove default-value flags in e2e 2019-11-19 07:44:02 -08:00
Tim Hockin 5a73199cf7 all e2e should use file://repo 2019-11-19 07:44:02 -08:00
Tim Hockin 405bfefdc2 e2e: don't pass one-time and wait 2019-11-19 07:44:02 -08:00
Tim Hockin 5e82e574ac e2e more random (I actually hit this) 2019-11-19 07:44:02 -08:00
Tim Hockin c94c8087de e2e --one-time tests can be sync 2019-11-19 07:44:02 -08:00
Tim Hockin bc0980b906 make e2e easier to read 2019-11-19 07:44:02 -08:00
Tim Hockin bde21410c6 Clean up e2e formatting 2019-11-19 07:44:02 -08:00
Kubernetes Prow Robot 6e604b38b9
Merge pull request #200 from thockin/followup-pr-193-webhook-cleanup
Clean up webhook a bit
2019-11-19 07:43:42 -08:00
Tim Hockin 5daf3a42f7 Clean up webhook a bit
Return hash so we don't need to recalculate.

Rename some funcs.
2019-11-17 13:22:38 -08:00
Kubernetes Prow Robot 7353b157b2
Merge pull request #193 from peick/http-header-webhook
Sent git hash and branch in the HTTP header of the webhook.
2019-10-29 09:16:46 -07:00
Kubernetes Prow Robot 012d0bfbf0
Merge pull request #194 from thockin/fix-pid1
Handle running as PID 1
2019-10-28 15:52:43 -07:00
Michael Peick 5cb2198689 Remove unnecessary comment. 2019-10-28 21:58:44 +01:00
Michael Peick 440eac730e Make hash value updates and reads atomic using mutex. 2019-10-28 21:57:03 +01:00
Kubernetes Prow Robot 26f21906be
Merge pull request #197 from hypnoglow/fix-nits
Fix minor issues from linters
2019-10-28 13:26:44 -07:00
Kubernetes Prow Robot 4bb587e083
Merge pull request #190 from hypnoglow/switch-to-runcommand
Replace exec.Command with runCommand
2019-10-28 13:24:43 -07:00
Igor Zibarev bff7e7bf43 Replace exec.Command with runCommand 2019-10-28 22:16:56 +03:00
Igor Zibarev 7a3c0679d5 Fix minor issues from linters 2019-10-28 22:05:39 +03:00
Tim Hockin 2a42fba009 Handle running as pid 1
This detects when it is running as pid 1, and becomes an init process.
Specifically this means handling SIGCHLD and reaping processes
(otherwise they become zombies) and forwarding signals to "real"
process.

We fork and re-exec ourselves so that we only get *this* SIGCHLD for
orphaned processes (re-parented to 1) and not the real events from
running things like git or ssh.
2019-10-27 09:45:27 -07:00
Michael Peick c3d026bf2b Cleanup test. 2019-10-27 14:47:18 +01:00
Michael Peick f0ec409582 Populate last hash value in case webhook is slower than the main loop. 2019-10-27 14:33:40 +01:00
Michael Peick e214aeb4d6 Rename http header "Git-Sync-Hash" into "Gitsync-Hash". 2019-10-26 13:34:39 +02:00
Michael Peick 1eb223e2cc Do not send branch information as http header. 2019-10-26 13:34:16 +02:00
Tim Hockin 98022e4fe8 Don't rebuild the base layers when not needed 2019-10-25 21:00:02 -07:00
Kubernetes Prow Robot b291874d3b
Merge pull request #187 from michallula/feature/submodule-depth-support
support --depth flag for submodules
2019-10-25 08:37:41 -07:00
Michael Peick 9ecc67fb3a Sent git hash and branch in the HTTP header of the webhook. 2019-10-25 10:42:37 +02:00
Michal Lula d1b97bae6c support of depth flag 2019-10-22 16:43:51 +02:00
Michal Lula 94818756af 🔧 add depth flag support and cover with tests 2019-10-21 10:40:51 +02:00