agola/services/types/arch.go

45 lines
1.0 KiB
Go

// Copyright 2019 Sorint.lab
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied
// See the License for the specific language governing permissions and
// limitations under the License.
package types
type Arch string
const (
Arch386 Arch = "386"
ArchAMD64 Arch = "amd64"
ArchARM Arch = "arm"
ArchARM64 Arch = "arm64"
)
var ValidArchs = []Arch{Arch386, ArchAMD64, ArchARM, ArchARM64}
func IsValidArch(arch Arch) bool {
for _, va := range ValidArchs {
if arch == va {
return true
}
}
return false
}
func ArchFromString(arch string) Arch {
for _, va := range ValidArchs {
if arch == string(va) {
return va
}
}
return ""
}