github.com/rigado/snapd@v2.42.5-go-mod+incompatible/snap/helpers.go (about) 1 // -*- Mode: Go; indent-tabs-mode: t -*- 2 3 /* 4 * Copyright (C) 2019 Canonical Ltd 5 * 6 * This program is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 3 as 8 * published by the Free Software Foundation. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 * 18 */ 19 20 package snap 21 22 import ( 23 "github.com/snapcore/snapd/strutil" 24 ) 25 26 var snapIDsSnapd = []string{ 27 // production 28 "PMrrV4ml8uWuEUDBT8dSGnKUYbevVhc4", 29 // TODO: when snapd snap is uploaded to staging, replace this with 30 // the real snap-id. 31 "todo-staging-snapd-id", 32 } 33 34 func IsSnapd(snapID string) bool { 35 return strutil.ListContains(snapIDsSnapd, snapID) 36 } 37 38 func MockSnapdSnapID(snapID string) (restore func()) { 39 old := snapIDsSnapd 40 snapIDsSnapd = append(snapIDsSnapd, snapID) 41 return func() { 42 snapIDsSnapd = old 43 } 44 }