Repository navigation
conductor 1.8.1
Since 1.8.0:
story:anonymous-pod-no-forge-secret: the pod of an instance withforge_access: anonymouscarries no forge credential under any entry name. It leaves out everydaemon.kubernetes.enventry that names the secret of a forge token of the file (a daemon's, or any instance'sforge_token) or holds a forge token's value, and the variables that point git, ssh, git's HTTP library,ghorglabat a credential or a configuration file (GIT_CONFIG_GLOBAL,GIT_CONFIG_SYSTEM,GIT_SSH_COMMAND,SSH_AUTH_SOCK,NETRCand the like); it keeps the installer's proxy and CA settings of git. This fixes the known issue of 1.8.0.- The same story: the anonymous clone and fetch read no system or global git configuration, no netrc file and no template, and ask no program for a login. Every command a process starts for such an instance gets plain
sshasGIT_SSH_COMMAND. A fetch is not run while the checkout's own configuration holds an extra header, a cookie file, a TLS client certificate or key or a URL rewrite that cannot be removed, or while the URL git fetchesoriginfrom (remote.origin.url, or the legacy file.git/remotes/originor.git/branches/origin) holds a user or a password; the pass names the key or the place, never the value. Every fetch of such an instance takes this one route, the blockers' and the catalog's read included; it fetches no submodule, and every git the runtime starts, and the pod's environment, carryGIT_NO_LAZY_FETCH=1, so a read of a partial clone fetches no object by itself. - The same story: an anonymous instance that also has a
forge_tokenof its own gets no token in its pod, and the daemon does not start it. - The same story: the guard denies more spellings of a push, a name given to git in
argv[0]included (env -a git-push git …,exec -a git-push git …); the watch and the start's report make noghorglabcall for such an instance and say so in one line; oneincludeentry the listing refuses is one member failure of the pass. - For every instance: the guard reads a launcher's options that take a value, a
--after a launcher, an option cluster, the options ofexecand a name given to the program inargv[0], so each rule finds the program word behind them.sudo -u root cargo build,timeout -s KILL 5 cargo test,env -u X cargo build,env -a cargo <program> buildandexec -a cargo <program> buildare now decided ascargo buildandcargo testalone are; 1.8.0 allowed them. - For every instance: the blockers collector's failure line passes over git's
warning:lines when another line follows.
Upgrade: none for a file without the member, but for the guard decisions named above. Beside forge_access: anonymous, a mapping that names secret_syncs, or another instance's forge_token secret under any key, is refused at validation from this release on; a checkout of such an instance whose origin's URL holds a login (https://user@host/..., ssh://git@host/...) is not fetched until the URL is plain.
Not covered, with a draft story each: an extra header in a checkout's worktree configuration file; taskset with a mask, env -S, a shortened long option of env and zsh's ARGV0= before a push.
Container image
ghcr.io/beyond10x/conductor:1.8.1 at digest sha256:b87e4839e5430db0106f6cf65af152181b9514586fc39ba0ec9dd2aa3d6d3715
docker run --rm ghcr.io/beyond10x/conductor:1.8.1 conductor --version