Commit Graph

143 Commits

Author SHA1 Message Date
Tim Hockin b3ee55446e
e2e: allow file:// repos (missing piece) 2023-02-06 17:51:04 -08:00
Tim Hockin 75ba836f80
e2e: fix test-tool image names 2023-02-06 17:51:03 -08:00
yoyehan 2f7335868e
Fix cases of syncing different SHAs back to back
Prior to this, it would fail if the 2nd SHA wasn't in the local repo.
Now it doesn't care what the local SHA for rev is, it only cares what is
checked out at HEAD.
2022-12-25 14:02:12 -08:00
Kubernetes Prow Robot a761413d81
Merge pull request #649 from thockin/e2e_fix_broken
e2e: fix 2 broken tests
2022-11-30 03:28:54 -08:00
Tim Hockin 59e2d9e97c
e2e: fix exechook_fail_retry
Previous e2e perf changes caused this to fail.
2022-11-24 17:50:03 -08:00
Tim Hockin a492289ebf
e2e: fix git submodules for file://
I guess upstream git intentionally broke this because of a CVE.

Also fix wait_for_sync to actually exit early when possible.
2022-11-23 23:43:27 -08:00
Tim Hockin bda1f84614
Add --touch-file flag and use it in tests
This is mostly designed to make testing easier instead of sleep.
2022-10-30 17:01:55 -07:00
Kubernetes Prow Robot 2edd4e5d9e
Merge pull request #632 from thockin/error-file-abs-path
Make --error-file allow abs paths
2022-09-11 08:47:23 -07:00
Kubernetes Prow Robot d0b7661c58
Merge pull request #630 from thockin/e2e_bad_branch
e2e: move err tests and add bad-branch
2022-09-11 07:45:23 -07:00
Tim Hockin c32a042213
Make --error-file allow abs paths
This also enforces th previously unenforced "must not start with a
period" rule.
2022-09-05 14:54:10 -07:00
Kubernetes Prow Robot cbf034f87b
Merge pull request #629 from thockin/silence_e2e_noise
e2e: Silence noise from git init
2022-09-03 03:16:27 -07:00
Tim Hockin fcb577b9fb
e2e: move err tests and add bad-branch 2022-09-02 13:45:43 -07:00
Tim Hockin 8e28337f3c
e2e: Silence noise from git init 2022-09-02 13:45:29 -07:00
Tim Hockin bcd4629159
Disable local git configs 2022-09-02 13:45:19 -07:00
Tim Hockin d4c60936ed
e2e: Allow N tests to fail and catch errexit
Prior to this, `errexit` was not active inside test functions (see
comments in this commit).

Now, multiple tests can fail - it does not abort on the first one.
2022-08-30 14:50:37 -07:00
Kubernetes Prow Robot 6e03c52fc3
Merge pull request #615 from thockin/fetch_if_depth_and_rev_not_found
Support shallow sync when the rev is not in-range
2022-08-30 02:51:01 -07:00
Tim Hockin eb33e7cfcb --max-sync-failures -> --max-failures
Deprecate but retain the old flag and env.
2022-08-21 10:48:20 -07:00
Tim Hockin ff0a73f5ad Support shallow sync when the rev is not in-range
If I ask for `--depth 1` and a branch, it's fine.

If I ask for `--depth 1` and a tag, and that tag is not within 1 commit
of the branch that was cloned, it will give an error.  Oddly, if the
initial `clone` was OK, and subsequent syncs drift, it is OK, because of
how we `fetch`.  But if it is too far away at the beginning, kaboom.

This betrays that the current model of `--branch` and `--rev` is really
broken, and should be revamped.  For now, I did something simple - if
the rev can't be found, try a fetch.  A "real" fix is more involved.

Also add tests.
2022-08-20 15:41:33 -07:00
Tim Hockin 35f0720083 e2e: basename the link when comparing 2022-08-14 15:51:09 -07:00
Tim Hockin 48b006568d e2e: also trap ERR 2022-07-26 11:27:56 -07:00
Kubernetes Prow Robot e7d6471ddd
Merge pull request #576 from thockin/v4_e2e_password_not_one_time
v4: e2e: Make password test not use --one-time
2022-07-07 23:33:49 -07:00
Kubernetes Prow Robot 9e1fc987cf
Merge pull request #574 from thockin/v4_no_XDG_CONFIG_HOME
v4: e2e: don't set XDG_CONFIG_HOME
2022-07-07 05:19:34 -07:00
Kubernetes Prow Robot 344f3ecd09
Merge pull request #570 from thockin/v4_e2e_CLEANUP_docker_rm
v4: e2e: $CLEANUP decides whether to rm containers
2022-07-07 04:43:34 -07:00
Kubernetes Prow Robot 37eba714c5
Merge pull request #568 from thockin/v4_ncsvr_http_bug
v4: e2e: Fix ncsvr to wait for input on HTTP
2022-07-07 04:27:34 -07:00
Tim Hockin 56918b0055 e2e: don't set XDG_CONFIG_HOME 2022-07-03 16:53:09 -07:00
Kubernetes Prow Robot 6898074c8a
Merge pull request #564 from thockin/v4_e2e_rebuild_less
v4: e2e: rebuild the container less often
2022-07-03 14:31:22 -07:00
Tim Hockin 20f0ab8a9b e2e: Make password test not use --one-time 2022-07-03 11:38:23 -07:00
Tim Hockin e579cf18b2 e2e: $CLEANUP decides whether to rm containers 2022-07-03 11:36:48 -07:00
Tim Hockin ec25d1a3f5 e2e: Fix ncsvr to wait for input on HTTP
This caused occasional e2e flakes when the server responded before the
client request had been sent.
2022-07-03 11:36:05 -07:00
Tim Hockin 4b9431f9bc Don't run apt-get in e2e build if we can avoid 2022-07-03 11:35:09 -07:00
Tim Hockin 10abfd561b e2e: rebuild container less often 2022-07-03 11:35:09 -07:00
Tim Hockin 27ac1642c9 Rename tests for better filtering 2022-07-03 11:14:46 -07:00
Tim Hockin 23540b9d94 Beef up askpass_url support
* Don't need to get the password at startup (it happens in the sync loop
  anyway)
* Add tests for bad password and flaky URL
2022-07-02 15:43:27 -07:00
Kubernetes Prow Robot d8da63cf48
Merge pull request #557 from thockin/v4_e2e_v6
v4: e2e with -v=6
2022-07-02 13:11:24 -07:00
Kubernetes Prow Robot 58bb41e82f
Merge pull request #538 from thockin/v4-dont-docker-kill
v4: e2e: Don't manually "docker kill"
2022-07-02 12:59:24 -07:00
Tim Hockin 2a4ca7794c e2e with -v=6 2022-07-02 10:59:47 -07:00
Kubernetes Prow Robot 52d2e075c6
Merge pull request #542 from thockin/v4-passwd_e2e_split
v4: Split password test to 2 - right and wrong passwd
2022-07-02 03:53:24 -07:00
Tim Hockin 00d81fd3f9 Split password test to 2 - right and wrong passwd 2022-06-24 08:46:43 -07:00
Tim Hockin 5b7df08826 e2e: Reformat ncsvr scripts for readability 2022-06-24 08:45:17 -07:00
Tim Hockin 9af6b7cfe2 e2e: Don't manually "docker kill"
It happens automatically on test cleanup
2022-06-24 08:45:05 -07:00
Tim Hockin a341fb62f9 Make ssh e2e test not use --one-time
There is functionality that needs to be tested beyond that.
2022-06-11 10:56:20 -07:00
Tim Hockin 2c6356cbcb Pass CLEANUP=0 to test_e2e to leave logs 2022-06-11 19:49:11 +02:00
Tim Hockin f8a532d9df Pass the whole environment to exechooks 2022-05-16 18:14:09 -07:00
Tim Hockin 535735607f Adapt testcases for v4 2022-03-11 08:41:57 -08:00
sed-i ff3d11c925 Add repo-sync test 2022-03-11 08:34:16 -08:00
Tim Hockin 8c5f33d5dd Make e2e treat args as tests-name regexes 2022-02-24 09:00:57 -08:00
Tim Hockin f4d124bded Add --git-gc flag to control GC on each sync
Values:
* "auto" - run `git gc --auto` (default, respects git gc.* configs)
* "always" - run `git gc`
* "aggressive" - run `git gc --aggressive` (may require a longer timeout)
* "off" - do not run `git gc` on each sync (good for --one-time use)
2022-02-24 08:00:10 -08:00
Tim Hockin 2538d293ba Set repoReady even when there wasn't a 1st clone
E.g. if the repo is already present (after a restart).
2022-02-12 17:38:36 -08:00
Kubernetes Prow Robot d3324e0b90
Merge pull request #478 from thockin/v4-link-abspath
Allow --dest to be an absolute path (v4)
2022-01-23 02:41:56 -08:00
Kubernetes Prow Robot 6dc0e44697
Merge pull request #472 from thockin/master
Don't try to remove the root if it appears corrupt (v4)
2022-01-23 01:15:56 -08:00