Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fcos|r4e|flatcar spec stabilization #442

Merged
merged 37 commits into from
Mar 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
548a056
base: rename v0_5_exp to v0_5
prestist Mar 17, 2023
30f36b8
base/v0_5: stabilize
prestist Mar 17, 2023
4d8339d
base: copy v0_5 to v0_6_exp
prestist Mar 17, 2023
e876713
base/v0_6_exp: update package statements
prestist Mar 17, 2023
297287f
r4e: rename v1_1_exp to v1_1
prestist Mar 17, 2023
cdf9744
r4e/v1_1: update package statements
prestist Mar 17, 2023
d373257
r4e/v1_1: drop '-experimental' from docs and config.go
prestist Mar 17, 2023
7712e6b
r4e: copy v1_1 to v1_2_exp
prestist Mar 17, 2023
12f0076
r4e/v1_2_exp: bump base to latest exp, and update package names
prestist Mar 17, 2023
79c5415
flatcar: rename v1_1_exp to v1_1
prestist Mar 17, 2023
6f6656f
flatcar/v1_1: update package statements
prestist Mar 17, 2023
c428d64
flatcar/v1_1: drop '-experimental' from docs and config.go
prestist Mar 17, 2023
a15c761
flatcar: copy v1_1 to v1_2_exp
prestist Mar 17, 2023
c31d246
flatcar/v1_2_exp: bump base to latest exp, and update package names
prestist Mar 17, 2023
ec9f66a
fcos: rename v1_5_exp to v1_5
prestist Mar 17, 2023
232acd4
fcos/v1_5: update package statements
prestist Mar 17, 2023
de10ca6
fcos/v1_5: drop '-experimental' from docs and config.go
prestist Mar 17, 2023
19df675
fcos: copy v1_5 to v1_6_exp
prestist Mar 17, 2023
a8b4422
fcos/v1_6_exp: bump base to latest exp, and update package names
prestist Mar 17, 2023
e9af3d9
openshift/v4_14_exp: update fcos and base dependencies
prestist Mar 17, 2023
c16948a
docs: fcos-v1_5_exp rename to fcos-v1_5
prestist Mar 17, 2023
5baf268
docs: add config-fcos-v1_6_exp
prestist Mar 17, 2023
23fadb9
docs: fcos v1_5 and fcos v1_6_exp document shuffle
prestist Mar 17, 2023
a14ea68
docs: update for fcos spec stabilization
prestist Mar 17, 2023
96d25ee
docs: flatcar-v1_1_exp rename to flatcar-v1_1
prestist Mar 17, 2023
3a7c49c
docs: add config-flatcar-v1_2_exp
prestist Mar 17, 2023
2b65dbb
docs: flatcar v1_1 and v1_2_exp document shuffle
prestist Mar 17, 2023
f7dcf8b
docs: update for flatcar spec stabilization
prestist Mar 17, 2023
5f45b7d
docs: r4e-v1_1_exp rename to r4e-v1_1
prestist Mar 17, 2023
b675c6b
docs: add config-r4e-v1_2_exp
prestist Mar 17, 2023
8a426cb
docs: r4e v1_1 and v1_2_exp document shuffle
prestist Mar 17, 2023
335d3e8
docs: update for r4e spec stabilization
prestist Mar 17, 2023
d28a624
docs: openshift-v4_14-exp update ign version
prestist Mar 17, 2023
5a022a2
configs: all exp spec's rebase ignition 3_4 to 3_5_experimental
prestist Mar 17, 2023
de60062
vendor: revendor ignition to include 3_5_experimental
prestist Mar 17, 2023
85d969d
docs/release-notes: add comments covering spec stabilization's
prestist Mar 17, 2023
7091f48
config.go: register new iterations of exp specs for fcos|r4e|flatcar
prestist Mar 20, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion base/v0_5_exp/schema.go → base/v0_5/schema.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

type Clevis struct {
Custom ClevisCustom `yaml:"custom"`
Expand Down
2 changes: 1 addition & 1 deletion base/v0_5_exp/translate.go → base/v0_5/translate.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

import (
"fmt"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

import (
"fmt"
Expand Down
2 changes: 1 addition & 1 deletion base/v0_5_exp/util.go → base/v0_5/util.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

import (
"github.com/coreos/ignition/v2/config/v3_4/types"
Expand Down
2 changes: 1 addition & 1 deletion base/v0_5_exp/validate.go → base/v0_5/validate.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

import (
baseutil "github.com/coreos/butane/base/util"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.)

package v0_5_exp
package v0_5

import (
"fmt"
Expand Down
262 changes: 262 additions & 0 deletions base/v0_6_exp/schema.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,262 @@
// Copyright 2020 Red Hat, Inc
//
// 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 v0_6_exp
prestist marked this conversation as resolved.
Show resolved Hide resolved

type Clevis struct {
Custom ClevisCustom `yaml:"custom"`
Tang []Tang `yaml:"tang"`
Threshold *int `yaml:"threshold"`
Tpm2 *bool `yaml:"tpm2"`
}

type ClevisCustom struct {
Config *string `yaml:"config"`
NeedsNetwork *bool `yaml:"needs_network"`
Pin *string `yaml:"pin"`
}

type Config struct {
Version string `yaml:"version"`
Variant string `yaml:"variant"`
Ignition Ignition `yaml:"ignition"`
KernelArguments KernelArguments `yaml:"kernel_arguments"`
Passwd Passwd `yaml:"passwd"`
Storage Storage `yaml:"storage"`
Systemd Systemd `yaml:"systemd"`
}

type Device string

type Directory struct {
Group NodeGroup `yaml:"group"`
Overwrite *bool `yaml:"overwrite"`
Path string `yaml:"path"`
User NodeUser `yaml:"user"`
Mode *int `yaml:"mode"`
}

type Disk struct {
Device string `yaml:"device"`
Partitions []Partition `yaml:"partitions"`
WipeTable *bool `yaml:"wipe_table"`
}

type Dropin struct {
Contents *string `yaml:"contents"`
ContentsLocal *string `yaml:"contents_local"`
Name string `yaml:"name"`
}

type File struct {
Group NodeGroup `yaml:"group"`
Overwrite *bool `yaml:"overwrite"`
Path string `yaml:"path"`
User NodeUser `yaml:"user"`
Append []Resource `yaml:"append"`
Contents Resource `yaml:"contents"`
Mode *int `yaml:"mode"`
}

type Filesystem struct {
Device string `yaml:"device"`
Format *string `yaml:"format"`
Label *string `yaml:"label"`
MountOptions []string `yaml:"mount_options"`
Options []string `yaml:"options"`
Path *string `yaml:"path"`
UUID *string `yaml:"uuid"`
WipeFilesystem *bool `yaml:"wipe_filesystem"`
WithMountUnit *bool `yaml:"with_mount_unit" butane:"auto_skip"` // Added, not in Ignition spec
}

type Group string

type HTTPHeader struct {
Name string `yaml:"name"`
Value *string `yaml:"value"`
}

type HTTPHeaders []HTTPHeader

type Ignition struct {
Config IgnitionConfig `yaml:"config"`
Proxy Proxy `yaml:"proxy"`
Security Security `yaml:"security"`
Timeouts Timeouts `yaml:"timeouts"`
}

type IgnitionConfig struct {
Merge []Resource `yaml:"merge"`
Replace Resource `yaml:"replace"`
}

type KernelArgument string

type KernelArguments struct {
ShouldExist []KernelArgument `yaml:"should_exist"`
ShouldNotExist []KernelArgument `yaml:"should_not_exist"`
}

type Link struct {
Group NodeGroup `yaml:"group"`
Overwrite *bool `yaml:"overwrite"`
Path string `yaml:"path"`
User NodeUser `yaml:"user"`
Hard *bool `yaml:"hard"`
Target *string `yaml:"target"`
}

type Luks struct {
Clevis Clevis `yaml:"clevis"`
Device *string `yaml:"device"`
Discard *bool `yaml:"discard"`
KeyFile Resource `yaml:"key_file"`
Label *string `yaml:"label"`
Name string `yaml:"name"`
OpenOptions []string `yaml:"open_options"`
Options []string `yaml:"options"`
UUID *string `yaml:"uuid"`
WipeVolume *bool `yaml:"wipe_volume"`
}

type NodeGroup struct {
ID *int `yaml:"id"`
Name *string `yaml:"name"`
}

type NodeUser struct {
ID *int `yaml:"id"`
Name *string `yaml:"name"`
}

type Partition struct {
GUID *string `yaml:"guid"`
Label *string `yaml:"label"`
Number int `yaml:"number"`
Resize *bool `yaml:"resize"`
ShouldExist *bool `yaml:"should_exist"`
SizeMiB *int `yaml:"size_mib"`
StartMiB *int `yaml:"start_mib"`
TypeGUID *string `yaml:"type_guid"`
WipePartitionEntry *bool `yaml:"wipe_partition_entry"`
}

type Passwd struct {
Groups []PasswdGroup `yaml:"groups"`
Users []PasswdUser `yaml:"users"`
}

type PasswdGroup struct {
Gid *int `yaml:"gid"`
Name string `yaml:"name"`
PasswordHash *string `yaml:"password_hash"`
ShouldExist *bool `yaml:"should_exist"`
System *bool `yaml:"system"`
}

type PasswdUser struct {
Gecos *string `yaml:"gecos"`
Groups []Group `yaml:"groups"`
HomeDir *string `yaml:"home_dir"`
Name string `yaml:"name"`
NoCreateHome *bool `yaml:"no_create_home"`
NoLogInit *bool `yaml:"no_log_init"`
NoUserGroup *bool `yaml:"no_user_group"`
PasswordHash *string `yaml:"password_hash"`
PrimaryGroup *string `yaml:"primary_group"`
ShouldExist *bool `yaml:"should_exist"`
SSHAuthorizedKeys []SSHAuthorizedKey `yaml:"ssh_authorized_keys"`
SSHAuthorizedKeysLocal []string `yaml:"ssh_authorized_keys_local"`
Shell *string `yaml:"shell"`
System *bool `yaml:"system"`
UID *int `yaml:"uid"`
}

type Proxy struct {
HTTPProxy *string `yaml:"http_proxy"`
HTTPSProxy *string `yaml:"https_proxy"`
NoProxy []string `yaml:"no_proxy"`
}

type Raid struct {
Devices []Device `yaml:"devices"`
Level *string `yaml:"level"`
Name string `yaml:"name"`
Options []string `yaml:"options"`
Spares *int `yaml:"spares"`
}

type Resource struct {
Compression *string `yaml:"compression"`
HTTPHeaders HTTPHeaders `yaml:"http_headers"`
Source *string `yaml:"source"`
Inline *string `yaml:"inline"` // Added, not in ignition spec
Local *string `yaml:"local"` // Added, not in ignition spec
Verification Verification `yaml:"verification"`
}

type SSHAuthorizedKey string

type Security struct {
TLS TLS `yaml:"tls"`
}

type Storage struct {
Directories []Directory `yaml:"directories"`
Disks []Disk `yaml:"disks"`
Files []File `yaml:"files"`
Filesystems []Filesystem `yaml:"filesystems"`
Links []Link `yaml:"links"`
Luks []Luks `yaml:"luks"`
Raid []Raid `yaml:"raid"`
Trees []Tree `yaml:"trees" butane:"auto_skip"` // Added, not in ignition spec
}

type Systemd struct {
Units []Unit `yaml:"units"`
}

type Tang struct {
Thumbprint *string `yaml:"thumbprint"`
URL string `yaml:"url"`
Advertisement *string `yaml:"advertisement"`
}

type TLS struct {
CertificateAuthorities []Resource `yaml:"certificate_authorities"`
}

type Timeouts struct {
HTTPResponseHeaders *int `yaml:"http_response_headers"`
HTTPTotal *int `yaml:"http_total"`
}

type Tree struct {
Local string `yaml:"local"`
Path *string `yaml:"path"`
}

type Unit struct {
Contents *string `yaml:"contents"`
ContentsLocal *string `yaml:"contents_local"`
Dropins []Dropin `yaml:"dropins"`
Enabled *bool `yaml:"enabled"`
Mask *bool `yaml:"mask"`
Name string `yaml:"name"`
}

type Verification struct {
Hash *string `yaml:"hash"`
}
Loading