From f1b846d9c63c7aafc356e9d4670ad939859422a2 Mon Sep 17 00:00:00 2001 From: Jiahui Date: Tue, 26 Apr 2022 14:02:48 +0800 Subject: [PATCH] add release v0.8.4 (#1338) * if the execution machine is not in the cluster, rootfs does not exist. Therefore, change the plugin load directory to mountRootfs. * add release v0.8.4 --- README.md | 4 ++-- docs/README_zh.md | 4 ++-- docs/site/src/docs/advanced/arm-cloudimage.md | 2 +- docs/site/src/docs/getting-started/plugin.md | 15 ++++++++------- docs/site/src/docs/getting-started/quick-start.md | 4 ++-- docs/site/src/zh/getting-started/quick-start.md | 4 ++-- note.sh | 4 ++-- pkg/plugin/plugins.go | 10 ++++++---- release_note.md | 8 ++++---- test/README.md | 4 ++-- 10 files changed, 31 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 48bd9ea6fec..51541a21903 100644 --- a/README.md +++ b/README.md @@ -91,8 +91,8 @@ Install a kubernetes cluster ```shell script #install Sealer binaries -wget https://github.com/alibaba/sealer/releases/download/v0.8.3/sealer-v0.8.3-linux-amd64.tar.gz && \ -tar zxvf sealer-v0.8.3-linux-amd64.tar.gz && mv sealer /usr/bin +wget https://github.com/alibaba/sealer/releases/download/v0.8.4/sealer-v0.8.4-linux-amd64.tar.gz && \ +tar zxvf sealer-v0.8.4-linux-amd64.tar.gz && mv sealer /usr/bin #run a kubernetes cluster sealer run kubernetes:v1.19.8 --masters 192.168.0.2 --passwd xxx ``` diff --git a/docs/README_zh.md b/docs/README_zh.md index 229a2c52fe2..41fe0183188 100644 --- a/docs/README_zh.md +++ b/docs/README_zh.md @@ -17,8 +17,8 @@ sealer可以通过一条命令安装一个kubernetes集群,仅需要提供IP ```shell script # 安装sealer -wget https://github.com/alibaba/sealer/releases/download/v0.8.3/sealer-v0.8.3-linux-amd64.tar.gz && \ -tar zxvf sealer-v0.8.3-linux-amd64.tar.gz && mv sealer /usr/bin +wget https://github.com/alibaba/sealer/releases/download/v0.8.4/sealer-v0.8.4-linux-amd64.tar.gz && \ +tar zxvf sealer-v0.8.4-linux-amd64.tar.gz && mv sealer /usr/bin # 安装kubernetes集群 sealer run kubernetes:v1.19.8 --masters 192.168.0.2,192.168.0.3,192.168.0.4 --nodes 192.168.0.5,192.168.0.6,192.168.0.7 --passwd xxx ``` diff --git a/docs/site/src/docs/advanced/arm-cloudimage.md b/docs/site/src/docs/advanced/arm-cloudimage.md index f7d613b11f6..f60b4ea8733 100644 --- a/docs/site/src/docs/advanced/arm-cloudimage.md +++ b/docs/site/src/docs/advanced/arm-cloudimage.md @@ -3,7 +3,7 @@ Download sealer for example download v0.5.0: ```shell script -wget https://github.com/alibaba/sealer/releases/download/v0.8.2/sealer-v0.8.3-linux-arm64.tar.gz +wget https://github.com/alibaba/sealer/releases/download/v0.8.2/sealer-v0.8.4-linux-arm64.tar.gz ``` ## Run a cluster on ARM platform diff --git a/docs/site/src/docs/getting-started/plugin.md b/docs/site/src/docs/getting-started/plugin.md index 89bb38f170c..1d9b7424904 100644 --- a/docs/site/src/docs/getting-started/plugin.md +++ b/docs/site/src/docs/getting-started/plugin.md @@ -1,4 +1,4 @@ -# Plugin Usage +# Using Plugin ## Plugin type list @@ -36,6 +36,7 @@ metadata: spec: type: SHELL action: PostInstall # PreInit PreInstall PostInstall + 'on': master #on field type needs to be enclosed in quotes data: | kubectl get nodes ``` @@ -50,13 +51,13 @@ action : [PreInit| PreInstall| PostInstall] # Specify phases to execute the shel after installing the cluster phase | action: PostInstall after clean cluster phase | action: PostClean combined use phase | action: PreInit|PreJoin -on : #Specifies the machine to execute the command +'on' : #Specifies the machine to execute the command If null, it is executed on all nodes by default - on all master nodes | on: master - on all work nodes | on: node - on the specified IP address | on: 192.168.56.113,192.168.56.114,192.168.56.115,192.168.56.116 - on a machine with continuous IP | on: 192.168.56.113-192.168.56.116 - on the specified label node (action must be set to PostInstall) | on: node-role.kubernetes.io/master= + on all master nodes | 'on': master + on all work nodes | 'on': node + on the specified IP address | 'on': 192.168.56.113,192.168.56.114,192.168.56.115,192.168.56.116 + on a machine with continuous IP | 'on': 192.168.56.113-192.168.56.116 + on the specified label node (action must be set to PostInstall) | 'on': node-role.kubernetes.io/master= data : #Specifies the shell command to execute ``` diff --git a/docs/site/src/docs/getting-started/quick-start.md b/docs/site/src/docs/getting-started/quick-start.md index acfe133932f..ffa44cc0dac 100755 --- a/docs/site/src/docs/getting-started/quick-start.md +++ b/docs/site/src/docs/getting-started/quick-start.md @@ -4,8 +4,8 @@ ```shell script # install Sealer binaries -wget https://github.com/alibaba/sealer/releases/download/v0.8.3/sealer-v0.8.3-linux-amd64.tar.gz && \ -tar zxvf sealer-v0.8.3-linux-amd64.tar.gz && mv sealer /usr/bin +wget https://github.com/alibaba/sealer/releases/download/v0.8.4/sealer-v0.8.4-linux-amd64.tar.gz && \ +tar zxvf sealer-v0.8.4-linux-amd64.tar.gz && mv sealer /usr/bin # run a kubernetes cluster sealer run kubernetes:v1.19.8 \ --masters 192.168.0.2,192.168.0.3,192.168.0.4 \ diff --git a/docs/site/src/zh/getting-started/quick-start.md b/docs/site/src/zh/getting-started/quick-start.md index f4f69eec6df..26b1147a351 100755 --- a/docs/site/src/zh/getting-started/quick-start.md +++ b/docs/site/src/zh/getting-started/quick-start.md @@ -4,8 +4,8 @@ ```shell script # 下载和安装sealer二进制 -wget https://github.com/alibaba/sealer/releases/download/v0.8.3/sealer-v0.8.3-linux-amd64.tar.gz && \ -tar zxvf sealer-v0.8.3-linux-amd64.tar.gz && mv sealer /usr/bin +wget https://github.com/alibaba/sealer/releases/download/v0.8.4/sealer-v0.8.4-linux-amd64.tar.gz && \ +tar zxvf sealer-v0.8.4-linux-amd64.tar.gz && mv sealer /usr/bin # 运行一个六节点的kubernetes集群 sealer run kubernetes:v1.19.8 \ --masters 192.168.0.2,192.168.0.3,192.168.0.4 \ diff --git a/note.sh b/note.sh index 436ffa67c37..fafbe3c4ee0 100644 --- a/note.sh +++ b/note.sh @@ -23,8 +23,8 @@ echo " echo " \`\`\`sh # Download and install sealer. Sealer is a binary tool of golang. You can download and unzip it directly to the bin directory, and the release page can also be downloaded -$ wget -c https://sealer.oss-cn-beijing.aliyuncs.com/sealer-latest.tar.gz && \\ - tar -xvf sealer-latest.tar.gz -C /usr/bin +$ wget -c https://sealer.oss-cn-beijing.aliyuncs.com/sealers/sealer-v${VERSION}-linux-amd64.tar.gz && \\ + tar -xvf sealer-v${VERSION}-linux-amd64.tar.gz -C /usr/bin \`\`\` " >> release_note.md echo "### [amd64 Download address]" >> release_note.md diff --git a/pkg/plugin/plugins.go b/pkg/plugin/plugins.go index 33bd337f1e0..b49023154c8 100644 --- a/pkg/plugin/plugins.go +++ b/pkg/plugin/plugins.go @@ -21,6 +21,8 @@ import ( "path/filepath" "plugin" + "github.com/alibaba/sealer/utils/platform" + "github.com/alibaba/sealer/common" "github.com/alibaba/sealer/logger" v1 "github.com/alibaba/sealer/types/api/v1" @@ -56,10 +58,10 @@ func NewPlugins(cluster *v2.Cluster) Plugins { } } -// Load plugin configs and shared object(.so) file from $rootfs/plugins dir. +// Load plugin configs and shared object(.so) file from $mountRootfs/plugins dir. func (c *PluginsProcessor) Load() error { c.Plugins = nil - path := common.DefaultTheClusterRootfsPluginDir(c.Cluster.Name) + path := filepath.Join(platform.DefaultMountCloudImageDir(c.Cluster.Name), "plugins") _, err := os.Stat(path) if os.IsNotExist(err) { return nil @@ -164,8 +166,8 @@ func (c *PluginsProcessor) writeFiles() error { if !utils.YamlMatcher(name) { name = fmt.Sprintf("%s.yaml", name) } - - err := utils.MarshalYamlToFile(filepath.Join(common.DefaultTheClusterRootfsPluginDir(c.Cluster.Name), name), config) + //write to mountRootfs/plugins dir + err := utils.MarshalYamlToFile(filepath.Join(platform.DefaultMountCloudImageDir(c.Cluster.Name), "plugins", name), config) if err != nil { return fmt.Errorf("write plugin metadata fileed %v", err) } diff --git a/release_note.md b/release_note.md index b2c1e781209..42c84dc7a33 100644 --- a/release_note.md +++ b/release_note.md @@ -1,9 +1,9 @@ # release note -## v0.8.3 +## v0.8.4 *🚀 bugfix*: -- [x] [fix umount rootfs failed](https://github.com/alibaba/sealer/pull/1321) -- [x] [support inspect image by name](https://github.com/alibaba/sealer/pull/1320) -- [x] [fix run config and run plugin nil point panic](https://github.com/alibaba/sealer/pull/1317) \ No newline at end of file +- [x] dump config if not exist; not to send registry if not exist +- [x] [bugfix: support copy dest with file name](https://github.com/alibaba/sealer/pull/1328) +- [x] [set normalized image name as manifestslist key](https://github.com/alibaba/sealer/pull/1327) \ No newline at end of file diff --git a/test/README.md b/test/README.md index 04341263d30..e7b7120f2ab 100644 --- a/test/README.md +++ b/test/README.md @@ -21,8 +21,8 @@ To install Sealer and prepare the test environment: ```console #install Sealer binaries -wget https://github.com/alibaba/sealer/releases/download/v0.8.3/sealer-v0.8.3-linux-amd64.tar.gz && \ -tar zxvf sealer-v0.8.3-linux-amd64.tar.gz && mv sealer /usr/bin +wget https://github.com/alibaba/sealer/releases/download/v0.8.4/sealer-v0.8.4-linux-amd64.tar.gz && \ +tar zxvf sealer-v0.8.4-linux-amd64.tar.gz && mv sealer /usr/bin #prepare test environment export ACCESSKEYID={your AK}