Merge pull request #1033 from grouville/git-ref
Improve/git: Git.#Repository's origin now uses the provided URL
This commit is contained in:
commit
16d4fc0c98
@ -29,19 +29,48 @@ import (
|
||||
authHeader: dagger.#Input & {*null | dagger.#Secret}
|
||||
|
||||
#up: [
|
||||
op.#FetchGit & {
|
||||
"remote": remote
|
||||
"ref": ref
|
||||
if (keepGitDir) {
|
||||
keepGitDir: true
|
||||
}
|
||||
if (authToken != null) {
|
||||
"authToken": authToken
|
||||
}
|
||||
if (authHeader != null) {
|
||||
"authHeader": authHeader
|
||||
op.#Load & {
|
||||
from: alpine.#Image & {
|
||||
package: git: "=~2.30"
|
||||
}
|
||||
},
|
||||
op.#Copy & {
|
||||
from: [
|
||||
op.#FetchGit & {
|
||||
"remote": remote
|
||||
"ref": ref
|
||||
if (keepGitDir) {
|
||||
keepGitDir: true
|
||||
}
|
||||
if (authToken != null) {
|
||||
"authToken": authToken
|
||||
}
|
||||
if (authHeader != null) {
|
||||
"authHeader": authHeader
|
||||
}
|
||||
},
|
||||
]
|
||||
dest: "/repository"
|
||||
},
|
||||
op.#Exec & {
|
||||
dir: "/repository"
|
||||
args: [
|
||||
"/bin/sh",
|
||||
"--noprofile",
|
||||
"--norc",
|
||||
"-eo",
|
||||
"pipefail",
|
||||
"-c",
|
||||
#"""
|
||||
code=$(git rev-parse --is-inside-work-tree 2>&1)
|
||||
([ "$code" = "true" ] && git remote set-url origin "$REMOTE") || true
|
||||
"""#,
|
||||
]
|
||||
env: REMOTE: remote
|
||||
},
|
||||
op.#Subdir & {
|
||||
dir: "/repository"
|
||||
},
|
||||
if subdir != null {
|
||||
op.#Subdir & {
|
||||
dir: subdir
|
||||
|
@ -96,3 +96,16 @@ TestPrivateRepository: os.#Container & {
|
||||
[ -d .git ]
|
||||
"""
|
||||
}
|
||||
|
||||
TestReferenceFormat: os.#Container & {
|
||||
image: alpine.#Image & {
|
||||
package: bash: "=5.1.0-r0"
|
||||
package: git: true
|
||||
}
|
||||
mount: "/repo1": from: privateRepo
|
||||
dir: "/repo1"
|
||||
command: """
|
||||
URL="$(git ls-remote --get-url origin)"
|
||||
[[ "$URL" = "https://github.com/dagger/dagger.git" ]]
|
||||
"""
|
||||
}
|
||||
|
Reference in New Issue
Block a user