mirror of
https://github.com/containers/podman.git
synced 2025-06-11 10:25:41 +08:00
Merge pull request #6634 from baude/v2buildfixes
fix misc remote build issues
This commit is contained in:
@ -48,34 +48,34 @@ func BuildImage(w http.ResponseWriter, r *http.Request) {
|
||||
defer os.RemoveAll(anchorDir)
|
||||
|
||||
query := struct {
|
||||
Dockerfile string `schema:"dockerfile"`
|
||||
Tag string `schema:"t"`
|
||||
ExtraHosts string `schema:"extrahosts"`
|
||||
Remote string `schema:"remote"`
|
||||
Quiet bool `schema:"q"`
|
||||
NoCache bool `schema:"nocache"`
|
||||
CacheFrom string `schema:"cachefrom"`
|
||||
Pull bool `schema:"pull"`
|
||||
Rm bool `schema:"rm"`
|
||||
ForceRm bool `schema:"forcerm"`
|
||||
Memory int64 `schema:"memory"`
|
||||
MemSwap int64 `schema:"memswap"`
|
||||
CpuShares uint64 `schema:"cpushares"` //nolint
|
||||
CpuSetCpus string `schema:"cpusetcpus"` //nolint
|
||||
CpuPeriod uint64 `schema:"cpuperiod"` //nolint
|
||||
CpuQuota int64 `schema:"cpuquota"` //nolint
|
||||
BuildArgs string `schema:"buildargs"`
|
||||
ShmSize int `schema:"shmsize"`
|
||||
Squash bool `schema:"squash"`
|
||||
Labels string `schema:"labels"`
|
||||
NetworkMode string `schema:"networkmode"`
|
||||
Platform string `schema:"platform"`
|
||||
Target string `schema:"target"`
|
||||
Outputs string `schema:"outputs"`
|
||||
Registry string `schema:"registry"`
|
||||
Dockerfile string `schema:"dockerfile"`
|
||||
Tag []string `schema:"t"`
|
||||
ExtraHosts string `schema:"extrahosts"`
|
||||
Remote string `schema:"remote"`
|
||||
Quiet bool `schema:"q"`
|
||||
NoCache bool `schema:"nocache"`
|
||||
CacheFrom string `schema:"cachefrom"`
|
||||
Pull bool `schema:"pull"`
|
||||
Rm bool `schema:"rm"`
|
||||
ForceRm bool `schema:"forcerm"`
|
||||
Memory int64 `schema:"memory"`
|
||||
MemSwap int64 `schema:"memswap"`
|
||||
CpuShares uint64 `schema:"cpushares"` //nolint
|
||||
CpuSetCpus string `schema:"cpusetcpus"` //nolint
|
||||
CpuPeriod uint64 `schema:"cpuperiod"` //nolint
|
||||
CpuQuota int64 `schema:"cpuquota"` //nolint
|
||||
BuildArgs string `schema:"buildargs"`
|
||||
ShmSize int `schema:"shmsize"`
|
||||
Squash bool `schema:"squash"`
|
||||
Labels string `schema:"labels"`
|
||||
NetworkMode string `schema:"networkmode"`
|
||||
Platform string `schema:"platform"`
|
||||
Target string `schema:"target"`
|
||||
Outputs string `schema:"outputs"`
|
||||
Registry string `schema:"registry"`
|
||||
}{
|
||||
Dockerfile: "Dockerfile",
|
||||
Tag: "",
|
||||
Tag: []string{},
|
||||
ExtraHosts: "",
|
||||
Remote: "",
|
||||
Quiet: false,
|
||||
@ -107,20 +107,19 @@ func BuildImage(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
|
||||
var (
|
||||
// Tag is the name with optional tag...
|
||||
name = query.Tag
|
||||
tag = "latest"
|
||||
output string
|
||||
additionalNames []string
|
||||
)
|
||||
if strings.Contains(query.Tag, ":") {
|
||||
tokens := strings.SplitN(query.Tag, ":", 2)
|
||||
name = tokens[0]
|
||||
tag = tokens[1]
|
||||
if len(query.Tag) > 0 {
|
||||
output = query.Tag[0]
|
||||
}
|
||||
if len(query.Tag) > 1 {
|
||||
additionalNames = query.Tag[1:]
|
||||
}
|
||||
|
||||
if _, found := r.URL.Query()["target"]; found {
|
||||
name = query.Target
|
||||
output = query.Target
|
||||
}
|
||||
|
||||
var buildArgs = map[string]string{}
|
||||
if _, found := r.URL.Query()["buildargs"]; found {
|
||||
if err := json.Unmarshal([]byte(query.BuildArgs), &buildArgs); err != nil {
|
||||
@ -168,8 +167,8 @@ func BuildImage(w http.ResponseWriter, r *http.Request) {
|
||||
TransientMounts: nil,
|
||||
Compression: archive.Gzip,
|
||||
Args: buildArgs,
|
||||
Output: name,
|
||||
AdditionalTags: []string{tag},
|
||||
Output: output,
|
||||
AdditionalTags: additionalNames,
|
||||
Log: func(format string, args ...interface{}) {
|
||||
buildEvents = append(buildEvents, fmt.Sprintf(format, args...))
|
||||
},
|
||||
|
@ -410,7 +410,7 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {
|
||||
// swagger:operation POST /build compat buildImage
|
||||
// ---
|
||||
// tags:
|
||||
// - images
|
||||
// - images (compat)
|
||||
// summary: Create image
|
||||
// description: Build an image from the given Dockerfile(s)
|
||||
// parameters:
|
||||
@ -425,7 +425,7 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {
|
||||
// name: t
|
||||
// type: string
|
||||
// default: latest
|
||||
// description: A name and optional tag to apply to the image in the `name:tag` format.
|
||||
// description: A name and optional tag to apply to the image in the `name:tag` format. If you omit the tag the default latest value is assumed. You can provide several t parameters.
|
||||
// - in: query
|
||||
// name: extrahosts
|
||||
// type: string
|
||||
@ -1211,7 +1211,7 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {
|
||||
// name: t
|
||||
// type: string
|
||||
// default: latest
|
||||
// description: A name and optional tag to apply to the image in the `name:tag` format.
|
||||
// description: A name and optional tag to apply to the image in the `name:tag` format. If you omit the tag the default latest value is assumed. You can provide several t parameters.
|
||||
// - in: query
|
||||
// name: extrahosts
|
||||
// type: string
|
||||
|
Reference in New Issue
Block a user