mirror of
https://github.com/rancher/os.git
synced 2025-05-16 20:09:28 +00:00
Compare commits
4 Commits
master
...
v1.0.5-rc1
Author | SHA1 | Date | |
---|---|---|---|
|
eaee6ef773 | ||
|
929bb5abce | ||
|
1205428d20 | ||
|
730b26e5e2 |
@ -39,7 +39,7 @@ RUN echo "Acquire::http { Proxy \"$APTPROXY\"; };" >> /etc/apt/apt.conf.d/01prox
|
|||||||
|
|
||||||
########## Dapper Configuration #####################
|
########## Dapper Configuration #####################
|
||||||
|
|
||||||
ENV DAPPER_ENV VERSION DEV_BUILD RUNTEST DEBUG APTPROXY ENGINE_REGISTRY_MIRROR
|
ENV DAPPER_ENV VERSION DEV_BUILD RUNTEST DEBUG APTPROXY ENGINE_REGISTRY_MIRROR INTEGRATION_TESTS
|
||||||
ENV DAPPER_DOCKER_SOCKET true
|
ENV DAPPER_DOCKER_SOCKET true
|
||||||
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
||||||
ENV DAPPER_OUTPUT ./bin ./dist ./build/initrd ./build/kernel
|
ENV DAPPER_OUTPUT ./bin ./dist ./build/initrd ./build/kernel
|
||||||
@ -63,7 +63,7 @@ ARG DOCKER_BUILD_VERSION=1.10.3
|
|||||||
ARG DOCKER_BUILD_PATCH_VERSION=v${DOCKER_BUILD_VERSION}-ros1
|
ARG DOCKER_BUILD_PATCH_VERSION=v${DOCKER_BUILD_VERSION}-ros1
|
||||||
ARG SELINUX_POLICY_URL=https://github.com/rancher/refpolicy/releases/download/v0.0.3/policy.29
|
ARG SELINUX_POLICY_URL=https://github.com/rancher/refpolicy/releases/download/v0.0.3/policy.29
|
||||||
|
|
||||||
ARG KERNEL_VERSION_amd64=4.9.40-rancher
|
ARG KERNEL_VERSION_amd64=4.9.78-rancher
|
||||||
ARG KERNEL_URL_amd64=https://github.com/rancher/os-kernel/releases/download/v${KERNEL_VERSION_amd64}/linux-${KERNEL_VERSION_amd64}-x86.tar.gz
|
ARG KERNEL_URL_amd64=https://github.com/rancher/os-kernel/releases/download/v${KERNEL_VERSION_amd64}/linux-${KERNEL_VERSION_amd64}-x86.tar.gz
|
||||||
#ARG KERNEL_URL_arm64=https://github.com/imikushin/os-kernel/releases/download/Estuary-4.4.0-arm64.8/linux-4.4.0-rancher-arm64.tar.gz
|
#ARG KERNEL_URL_arm64=https://github.com/imikushin/os-kernel/releases/download/Estuary-4.4.0-arm64.8/linux-4.4.0-rancher-arm64.tar.gz
|
||||||
|
|
||||||
|
@ -160,11 +160,7 @@ func editSyslinux(c *cli.Context) error {
|
|||||||
"rancher/os-console:"+config.Version,
|
"rancher/os-console:"+config.Version,
|
||||||
"boot/global.cfg")
|
"boot/global.cfg")
|
||||||
cmd.Stdout, cmd.Stderr, cmd.Stdin = os.Stdout, os.Stderr, os.Stdin
|
cmd.Stdout, cmd.Stderr, cmd.Stdin = os.Stdout, os.Stderr, os.Stdin
|
||||||
if err := cmd.Run(); err != nil {
|
return cmd.Run()
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func configSet(c *cli.Context) error {
|
func configSet(c *cli.Context) error {
|
||||||
|
@ -216,10 +216,7 @@ func runInstall(image, installType, cloudConfig, device, partition, statedir, ka
|
|||||||
"--volumes-from=command-volumes", image, "-d", device, "-t", installType, "-c", cloudConfig,
|
"--volumes-from=command-volumes", image, "-d", device, "-t", installType, "-c", cloudConfig,
|
||||||
"-a", kappend)
|
"-a", kappend)
|
||||||
cmd.Stdout, cmd.Stderr = os.Stdout, os.Stderr
|
cmd.Stdout, cmd.Stderr = os.Stdout, os.Stderr
|
||||||
if err := cmd.Run(); err != nil {
|
return cmd.Run()
|
||||||
return err
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -308,10 +305,7 @@ func runInstall(image, installType, cloudConfig, device, partition, statedir, ka
|
|||||||
cmd := exec.Command("system-docker", installerCmd...)
|
cmd := exec.Command("system-docker", installerCmd...)
|
||||||
log.Debugf("Run(%v)", cmd)
|
log.Debugf("Run(%v)", cmd)
|
||||||
cmd.Stdout, cmd.Stderr = os.Stdout, os.Stderr
|
cmd.Stdout, cmd.Stderr = os.Stdout, os.Stderr
|
||||||
if err := cmd.Run(); err != nil {
|
return cmd.Run()
|
||||||
return err
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -687,11 +681,7 @@ func setDiskpartitions(device, diskType string) error {
|
|||||||
log.Errorf("parted: %s", err)
|
log.Errorf("parted: %s", err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err := setBootable(device, diskType); err != nil {
|
return setBootable(device, diskType)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func partitionMounted(device string, file io.Reader) bool {
|
func partitionMounted(device string, file io.Reader) bool {
|
||||||
|
@ -76,11 +76,7 @@ func writeCerts(generateServer bool, hostname []string, certPath, keyPath, caCer
|
|||||||
if err := config.Set("rancher.docker.server_cert", string(cert)); err != nil {
|
if err := config.Set("rancher.docker.server_cert", string(cert)); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err := config.Set("rancher.docker.server_key", string(key)); err != nil {
|
return config.Set("rancher.docker.server_key", string(key))
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func writeCaCerts(cfg *config.CloudConfig, caCertPath, caKeyPath string) error {
|
func writeCaCerts(cfg *config.CloudConfig, caCertPath, caKeyPath string) error {
|
||||||
|
@ -29,11 +29,7 @@ func PrepWorkspace(workspace string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
scripts := path.Join(workspace, "scripts")
|
scripts := path.Join(workspace, "scripts")
|
||||||
if err := system.EnsureDirectoryExists(scripts); err != nil {
|
return system.EnsureDirectoryExists(scripts)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func PersistScriptInWorkspace(script config.Script, workspace string) (string, error) {
|
func PersistScriptInWorkspace(script config.Script, workspace string) (string, error) {
|
||||||
|
@ -215,11 +215,7 @@ func execDocker(config *Config, docker, cmd string, args []string) (*exec.Cmd, e
|
|||||||
|
|
||||||
func copyDefault(folder, name string) error {
|
func copyDefault(folder, name string) error {
|
||||||
defaultFile := path.Join(defaultPrefix, folder, name)
|
defaultFile := path.Join(defaultPrefix, folder, name)
|
||||||
if err := CopyFile(defaultFile, folder, name); err != nil {
|
return CopyFile(defaultFile, folder, name)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func copyDefaultFolder(folder string) error {
|
func copyDefaultFolder(folder string) error {
|
||||||
@ -453,11 +449,7 @@ func PrepareFs(config *Config) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := firstPrepare(); err != nil {
|
return firstPrepare()
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func touchSocket(path string) error {
|
func touchSocket(path string) error {
|
||||||
@ -581,11 +573,7 @@ func firstPrepare() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := createGroup(); err != nil {
|
return createGroup()
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func secondPrepare(config *Config, docker string, args ...string) error {
|
func secondPrepare(config *Config, docker string, args ...string) error {
|
||||||
|
@ -23,11 +23,7 @@ func SetHostnameFromCloudConfig(cc *config.CloudConfig) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// set hostname
|
// set hostname
|
||||||
if err := syscall.Sethostname([]byte(hostname)); err != nil {
|
return syscall.Sethostname([]byte(hostname))
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func SyncHostname() error {
|
func SyncHostname() error {
|
||||||
@ -55,9 +51,5 @@ func SyncHostname() error {
|
|||||||
}
|
}
|
||||||
hostsContent += line + "\n"
|
hostsContent += line + "\n"
|
||||||
}
|
}
|
||||||
if err := ioutil.WriteFile("/etc/hosts", []byte(hostsContent), 0600); err != nil {
|
return ioutil.WriteFile("/etc/hosts", []byte(hostsContent), 0600)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
@ -358,10 +358,7 @@ func applyInterfaceConfig(link netlink.Link, netConf InterfaceConfig) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err := b.AddSlave(link.Attrs().Name); err != nil {
|
return b.AddSlave(link.Attrs().Name)
|
||||||
return err
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO: undo
|
//TODO: undo
|
||||||
|
@ -12,12 +12,12 @@ RUN mkdir -p /source/assets
|
|||||||
#RUN curl -fL https://releases.rancher.com/os/latest/rootfs_arm64.tar.gz > /source/assets/rootfs_arm64.tar.gz
|
#RUN curl -fL https://releases.rancher.com/os/latest/rootfs_arm64.tar.gz > /source/assets/rootfs_arm64.tar.gz
|
||||||
COPY rootfs_arm64.tar.gz /source/assets/rootfs_arm64.tar.gz
|
COPY rootfs_arm64.tar.gz /source/assets/rootfs_arm64.tar.gz
|
||||||
|
|
||||||
ENV URL=https://github.com/SvenDowideit/rpi64-kernel/releases/download
|
ENV URL=https://github.com/DieterReuter/rpi64-kernel/releases/download
|
||||||
ENV VER=v20170626-014036
|
ENV VER=v20180114-121512
|
||||||
|
|
||||||
RUN curl -fL ${URL}/${VER}/4.9.34-bee42-v8.tar.gz > /source/assets/kernel.tar.gz
|
RUN curl -fL ${URL}/${VER}/4.9.76-hypriotos-v8.tar.gz > /source/assets/kernel.tar.gz
|
||||||
RUN curl -fL ${URL}/${VER}/bootfiles.tar.gz > /source/assets/bootfiles.tar.gz
|
RUN curl -fL ${URL}/${VER}/bootfiles.tar.gz > /source/assets/bootfiles.tar.gz
|
||||||
RUN curl -fL https://github.com/SvenDowideit/rpi-bootloader/releases/download/v20170622-085322/rpi-bootloader.tar.gz > /source/assets/rpi-bootfiles.tar.gz
|
RUN curl -fL https://github.com/DieterReuter/rpi-bootloader/releases/download/v20180114-121611/rpi-bootloader.tar.gz > /source/assets/rpi-bootfiles.tar.gz
|
||||||
|
|
||||||
#ENV RPI_URL=https://github.com/raspberrypi/firmware/raw/master/boot
|
#ENV RPI_URL=https://github.com/raspberrypi/firmware/raw/master/boot
|
||||||
#RUN curl -fL ${RPI_URL}/bootcode.bin > /source/assets/bootcode.bin
|
#RUN curl -fL ${RPI_URL}/bootcode.bin > /source/assets/bootcode.bin
|
||||||
|
@ -13,13 +13,19 @@ echo PREPARE
|
|||||||
./scripts/prepare
|
./scripts/prepare
|
||||||
echo PACKAGE
|
echo PACKAGE
|
||||||
./scripts/package
|
./scripts/package
|
||||||
if [[ "$ARCH" == "" || "$ARCH" == "amd64" ]]; then
|
|
||||||
export INTEGRATION_TESTS=1
|
if [[ "$INTEGRATION_TESTS" != "" ]]; then
|
||||||
echo INTEGRATION-TEST
|
if [[ "$ARCH" == "" || "$ARCH" == "amd64" ]]; then
|
||||||
./scripts/integration-test
|
export INTEGRATION_TESTS=1
|
||||||
|
else
|
||||||
|
export INTEGRATION_TESTS=0
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [[ "$INTEGRATION_TESTS" != "1" ]]; then
|
||||||
|
echo INTEGRATION-TEST
|
||||||
|
./scripts/integration-test
|
||||||
else
|
else
|
||||||
export INTEGRATION_TESTS=0
|
echo "Skipping integration tests"
|
||||||
echo "Skipping integration tests"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$ARCH" == "" || "$ARCH" == "amd64" ]]; then
|
if [[ "$ARCH" == "" || "$ARCH" == "amd64" ]]; then
|
||||||
|
@ -90,11 +90,7 @@ func ConvertIgnoreOmitEmpty(from, to interface{}) error {
|
|||||||
|
|
||||||
decoder := yaml.NewDecoder(&buffer)
|
decoder := yaml.NewDecoder(&buffer)
|
||||||
|
|
||||||
if err := decoder.Decode(to); err != nil {
|
return decoder.Decode(to)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func Copy(d interface{}) interface{} {
|
func Copy(d interface{}) interface{} {
|
||||||
|
Loading…
Reference in New Issue
Block a user