On Mon, Jan 25, 2021 at 08:26:14PM +0800, Wu Zhende wrote:
Signed-off-by: Wu Zhende wuzhende666@163.com
container/lifecycle/Dockerfile | 25 +++++++++++++++++++++++ container/lifecycle/build | 18 +++++++++++++++++ container/lifecycle/build-depends | 1 + container/lifecycle/start | 33 +++++++++++++++++++++++++++++++ container/lifecycle/start-depends | 1 + 5 files changed, 78 insertions(+) create mode 100644 container/lifecycle/Dockerfile create mode 100755 container/lifecycle/build create mode 100755 container/lifecycle/build-depends create mode 100755 container/lifecycle/start create mode 100755 container/lifecycle/start-depends
diff --git a/container/lifecycle/Dockerfile b/container/lifecycle/Dockerfile new file mode 100644 index 0000000..d89a181 --- /dev/null +++ b/container/lifecycle/Dockerfile @@ -0,0 +1,25 @@ +FROM alpine:3.11
Pls add maintainer.
+RUN sed -ri.origin 's|^https?://dl-cdn.alpinelinux.org|http://mirrors.huaweicloud.com%7Cg' /etc/apk/repositories
+RUN apk update && \
- apk add --no-cache 'ruby-dev' \
- 'g++' 'gcc' 'pcre' 'libevent' 'make' 'git' 'cpio' 'bash'
+RUN umask 002 && \
- echo ':sources: ["http://rubygems.org"]' >> ~/.gemrc && \
gem sources -r https://rubygems.org/ -a https://gems.ruby-china.com/ ref patch: container/*: replace gem sources
- gem install rest-client && \
- gem install activesupport && \
- gem install git && \
- gem install json && \
- gem install yaml
+ENV LIFECYCLE_RUNTIME_DIR /c/cci/lifecycle
+RUN mkdir -p $LIFECYCLE_RUNTIME_DIR && \
- chown -R 1090:1090 /c
+WORKDIR $LIFECYCLE_RUNTIME_DIR
+COPY --chown=1090:1090 lifecycle . diff --git a/container/lifecycle/build b/container/lifecycle/build new file mode 100755 index 0000000..8c4acca --- /dev/null +++ b/container/lifecycle/build @@ -0,0 +1,18 @@ +#!/usr/bin/env ruby +# SPDX-License-Identifier: MulanPSL-2.0+ +# Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved. +# frozen_string_literal: true
+require 'set' +require_relative '../defconfig.rb'
+names = Set.new ['LIFECYCLE_PORT'] +defaults = relevant_defaults(names)
+LIFECYCLE_PORT = (defaults['LIFECYCLE_PORT'] || '11311')
delete the ()?
Thanks, Xueliang
+CCI_SRC = ENV['CCI_SRC'] +system "bash #{CCI_SRC}/container/compile ." +system "docker build -t lifecycle-#{LIFECYCLE_PORT} ."
+system 'rm lifecycle' diff --git a/container/lifecycle/build-depends b/container/lifecycle/build-depends new file mode 100755 index 0000000..5dd403e --- /dev/null +++ b/container/lifecycle/build-depends @@ -0,0 +1 @@ +scheduler-dev diff --git a/container/lifecycle/start b/container/lifecycle/start new file mode 100755 index 0000000..7e67b3c --- /dev/null +++ b/container/lifecycle/start @@ -0,0 +1,33 @@ +#!/usr/bin/env ruby +# SPDX-License-Identifier: MulanPSL-2.0+ +# Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved. +# frozen_string_literal: true
+require 'set' +require_relative '../defconfig.rb'
+names = Set.new %w[
- LIFECYCLE_PORT
+]
+defaults = relevant_defaults(names) +env = docker_env(defaults)
+LIFECYCLE_PORT = defaults['LIFECYCLE_PORT'] || '11311' +docker_rm "lifecycle-#{LIFECYCLE_PORT}"
+cmd = %W[
- docker run
- --restart=always
- --name lifecycle-#{LIFECYCLE_PORT}
- -d
- -u 1090:1090
- -p #{LIFECYCLE_PORT}:#{LIFECYCLE_PORT}
+] + env + %W[
- -v /etc/localtime:/etc/localtime:ro
- lifecycle-#{LIFECYCLE_PORT}
+]
+cmd += ['sh', '-c', 'umask 002 && ./lifecycle']
+system(*cmd) diff --git a/container/lifecycle/start-depends b/container/lifecycle/start-depends new file mode 100755 index 0000000..8357fca --- /dev/null +++ b/container/lifecycle/start-depends @@ -0,0 +1 @@
+es
2.23.0