Migrate github.com/docker/docker/pkg/symlink#54
Conversation
Docker-DCO-1.1-Signed-off-by: Michael Crosby <[email protected]> (github: crosbymichael)
Docker-DCO-1.1-Signed-off-by: Michael Crosby <[email protected]> (github: crosbymichael)
…d#5370 normally symlinks are created as either ln -s /path/existing /path/new-name or cd /path && ln -s ./existing new-name but one can create it this way cd /path && ln -s existing new-name this drives FollowSymlinkInScope into infinite loop Docker-DCO-1.1-Signed-off-by: Lajos Papp <[email protected]> (github: lalyos)
ideally it should never reach it, but there was already multiple issues with infinite loop at following symlinks. this fixes hanging unit tests Docker-DCO-1.1-Signed-off-by: Lajos Papp <[email protected]> (github: lalyos)
use path.IsAbs() instead of checking if first char is '/' Docker-DCO-1.1-Signed-off-by: Lajos Papp <[email protected]> (github: lalyos)
Docker-DCO-1.1-Signed-off-by: Tibor Vass <[email protected]> (github: tiborvass)
Docker-DCO-1.1-Signed-off-by: Tibor Vass <[email protected]> (github: tiborvass)
Merge release v1.1.0
Merge release v1.2.0
Bump to version 1.3.0
The doc (or src) says: The result is Cleaned. http://golang.org/pkg/path/filepath/#Join Signed-off-by: shuai-z <[email protected]>
The doc (or src) says: The result is Cleaned. http://golang.org/pkg/path/filepath/#Join Signed-off-by: shuai-z <[email protected]>
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <[email protected]> (github: unclejack)
Signed-off-by: Tibor Vass <[email protected]>
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <[email protected]> (github: unclejack)
Signed-off-by: Tibor Vass <[email protected]>
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <[email protected]> (github: unclejack)
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Andrew Page <[email protected]>
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Andrew Page <[email protected]>
Signed-off-by: Tibor Vass <[email protected]>
Signed-off-by: Tim <[email protected]>
🎉 Happy New Year! 🎉
Signed-off-by: John Howard <[email protected]>
Signed-off-by: Jessica Frazelle <[email protected]>
Signed-off-by: Darren Stahl <[email protected]>
Signed-off-by: phineas <[email protected]>
* additional * ambiguous * anonymous * anything * application * because * before * building * capabilities * circumstances * commit * committer * compresses * concatenated * config * container * container's * current * definition * delimiter * disassociates * discovery * distributed * doesnotexist * downloads * duplicates * either * enhancing * enumerate * escapable * exactly * expect * expectations * expected * explicitly * false * filesystem * following * forbidden * git with * healthcheck * ignore * independent * inheritance * investigating * irrelevant * it * logging * looking * membership * mimic * minimum * modify * mountpoint * multiline * notifier * outputting * outside * overridden * override * parsable * plugins * precedence * propagation * provided * provides * registries * repositories * returning * settings * should * signals * someone * something * specifically * successfully * synchronize * they've * thinking * uninitialized * unintentionally * unmarshaling * unnamed * unreferenced * verify Signed-off-by: Josh Soref <[email protected]> Signed-off-by: Sebastiaan van Stijn <[email protected]>
Changes most references of syscall to golang.org/x/sys/ Ones aren't changes include, Errno, Signal and SysProcAttr as they haven't been implemented in /x/sys/. Signed-off-by: Christopher Jones <[email protected]> [s390x] switch utsname from unsigned to signed per golang/sys@33267e0 char in s390x in the /x/sys/unix package is now signed, so change the buildtags Signed-off-by: Christopher Jones <[email protected]>
[project] Switch most syscalls to golang.org/x/sys
Signed-off-by: Daniel Nephin <[email protected]>
Signed-off-by: Oliver Reason <[email protected]> Update LICENSE.APACHE Signed-off-by: Oliver Reason <[email protected]> Update LICENSE.BSD Signed-off-by: Oliver Reason <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Steps taken:
# install filter-repo (https://github.com/newren/git-filter-repo/blob/main/INSTALL.md)
brew install git-filter-repo
cd ~/projects
# create a temporary clone of docker
git clone https://github.com/docker/docker.git moby_symlink
cd moby_symlink
# create branch to work with
git checkout -b migrate_pkg_symlink
# remove all code, except for pkg/symlink
git filter-repo --path pkg/symlink
# go to the target github.com/moby/sys repository
cd ~/projects/moby-sys
# create a branch to work with
git checkout -b integrate_moby_symlink
# add the temporary repository as an upstream and make sure it's up-to-date
git remote add moby_symlink ~/projects/moby_symlink
git fetch moby_symlink
# merge the upstream code, rewriting "pkg/symlink" to "symlink"
git merge --allow-unrelated-histories --signoff -S -Xsubtree=pkg/ moby_symlink/migrate_pkg_symlink
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
Signed-off-by: Sebastiaan van Stijn <[email protected]>
|
I manually marked the DCO test to pass (see #53 (comment)) |
|
LGTM 🚢 🚀 !! |
|
When working on this PR, I recalled there's some things (not for this module alone) we need to address around the licensing. I noticed that while the repository has a top-level LICENSE in place, go submodules effectively act as individual repositories, which means that the individual modules don't have a license. I think we need a LICENSE and NOTICE in each of the submodules, and while we're at it, add license headers to individual files (as is done in containerd/containerd), and probably change copyright to I'll create a tracking issue for that. |
|
ping @kolyshkin @cpuguy83 PTAL |
|
LGTM |
| } | ||
| } | ||
|
|
||
| func mkTempDir(t *testing.T) (string, func()) { |
There was a problem hiding this comment.
go 1.15 adds (*testing.TB).TempDir() which would be easier to use and won't require a cleanup.
But we'll have to wait until at least go 1.17 to use it :-\
There was a problem hiding this comment.
Ah, nice; didn't know about the TempDir(), but we can start using CleanUp(). I did a PR for that in moby/term#21. That repo was still testing against go 1.13 for backward compatibility, but I see this repo only tests go 1.14 and go 1.15, so I can make a similar change here
This migration was taken from https://github.com/moby/moby/commits/0b93c6e1315aae52638474476c9e91f2677d2e52/pkg/symlink
Strategy taken:
After the above;