github.com/meulengracht/snapd@v0.0.0-20210719210640-8bde69bcc84e/image/options.go (about) 1 // -*- Mode: Go; indent-tabs-mode: t -*- 2 3 /* 4 * Copyright (C) 2014-2021 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 image 21 22 type Options struct { 23 ModelFile string 24 Classic bool 25 26 Channel string 27 28 // TODO: use OptionsSnap directly here? 29 Snaps []string 30 SnapChannels map[string]string 31 32 // WideCohortKey can be used to supply a cohort covering all 33 // the snaps in the image, there is no generally suppported API 34 // to create such a cohort key. 35 WideCohortKey string 36 37 PrepareDir string 38 39 // Architecture to use if none is specified by the model, 40 // useful only for classic mode. If set must match the model otherwise. 41 Architecture string 42 43 Customizations Customizations 44 } 45 46 // Customizatons defines possible image customizations. Not all of 47 // them applies to all kind of systems. 48 type Customizations struct { 49 // ConsoleConf can be set to "disabled" to disable console-conf 50 // forcefully (UC16/18 only ATM). 51 ConsoleConf string `json:"console-conf"` 52 // CloudInitUserData can optionally point to cloud init user-data 53 // (UC16/18 only) 54 CloudInitUserData string `json:"cloud-init-user-data"` 55 // BootFlags can be set to a list of boot flags 56 // to set in the recovery bootloader (UC20 only). 57 // Currently only the "factory" hint flag is supported. 58 BootFlags []string `json:"boot-flags"` 59 }