Skip to content
This repository was archived by the owner on Jan 18, 2023. It is now read-only.

Commit 974133f

Browse files
committed
CMK release - version v1.5.2.
1 parent 2295a29 commit 974133f

35 files changed

+260
-305
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
all: docker
1818

19-
version=v1.5.1
19+
version=v1.5.2
2020

2121
# TODO: This target should be changed, when e2e tests will be ready and test
2222
# entrypoint will be defined.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ Options:
7272
--cmk-cmd-list=<list> Comma seperated list of CMK sub-commands to run
7373
on each host
7474
[default: init,reconcile,install,discover,nodereport].
75-
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.1].
75+
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.2].
7676
--cmk-img-pol=<pol> Image pull policy for the CMK Docker image
7777
[default: IfNotPresent].
7878
--conf-dir=<dir> CMK configuration directory [default: /etc/cmk].

RELEASE.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,21 +120,21 @@ Running Vagrant locally syncs your repository directory into `/cmk` using by def
120120
- check whether current branch is `master` and if it's "clean"
121121
- fetch origin
122122
- check whether `CMK_RELEASE_VER` is set, follows proper pattern and there in no existing tag with it's value
123-
- check whether there is no `cmk-release-v1.5.1` branch neither locally nor remotely
124-
- get previous version string from `Makefile` (`version=v1.5.1`) and check
123+
- check whether there is no `cmk-release-v1.5.2` branch neither locally nor remotely
124+
- get previous version string from `Makefile` (`version=v1.5.2`) and check
125125

126126
If all above checks pass, script will:
127-
- create local branch `cmk-release-v1.5.1`
128-
- replace old release string (`v1.5.1`) with new one (`v1.5.1`) in all repo files
129-
- commit changes with message `CMK release - version v1.5.1.`
127+
- create local branch `cmk-release-v1.5.2`
128+
- replace old release string (`v1.5.2`) with new one (`v1.5.2`) in all repo files
129+
- commit changes with message `CMK release - version v1.5.2.`
130130
- push branch to origin
131131
- checkout to `master` branch.
132132

133133
**What will happen after PR gets to `master` branch**
134134
After PR is "Rebased and merged" into `master` branch, Jenkins CI/CD will start VM based on `.release/Vagrantfile` and execute `.release/make_release.py` inside the VM.
135135

136136
**What will `make_release.py` do :**
137-
- check latest commit message for `CMK release - version v1.5.1.` string
138-
- `v1.5.1` will become tag value
137+
- check latest commit message for `CMK release - version v1.5.2.` string
138+
- `v1.5.2` will become tag value
139139
- generate change log
140140
- create release with change log based on tag found in commit message

cmk.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
--cmk-cmd-list=<list> Comma seperated list of CMK sub-commands to run
6464
on each host
6565
[default: init,reconcile,install,discover,nodereport].
66-
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.1].
66+
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.2].
6767
--cmk-img-pol=<pol> Image pull policy for the CMK Docker image
6868
[default: IfNotPresent].
6969
--install-dir=<dir> CMK install directory [default: /opt/bin].
@@ -119,7 +119,7 @@
119119
def main():
120120
setup_logging()
121121

122-
args = docopt(__doc__, version="CMK v1.5.1")
122+
args = docopt(__doc__, version="CMK v1.5.2")
123123
if args["cluster-init"]:
124124
clusterinit.cluster_init(args["--host-list"], args["--all-hosts"],
125125
args["--cmk-cmd-list"], args["--cmk-img"],

docs/cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Options:
6868
--cmk-cmd-list=<list> Comma seperated list of CMK sub-commands to run
6969
on each host
7070
[default: init,reconcile,install,discover,nodereport].
71-
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.1].
71+
--cmk-img=<img> CMK Docker image [default: cmk:v1.5.2].
7272
--cmk-img-pol=<pol> Image pull policy for the CMK Docker image
7373
[default: IfNotPresent].
7474
--install-dir=<dir> CMK install directory [default: /opt/bin].

docs/html/docs/architecture.html

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -82,19 +82,19 @@ <h2>
8282
<p>CMK accomplishes core isolation by controlling what logical CPUs each
8383
container may use for execution by wrapping target application commands
8484
with the CMK command-line program. The <code>cmk</code> wrapper program maintains
85-
state in a directory hierarchy on disk that describes <strong>pools</strong> from
85+
state in a <a href="https://kubernetes.io/docs/concepts/configuration/configmap/" rel="nofollow">Kubernetes configmap</a> that describes <strong>pools</strong> from
8686
which user containers can acquire available <strong>CPU lists</strong>. These pools
8787
can be exclusive (only one container per CPU list) or non-exclusive
88-
(multiple containers can share a CPU list.) Each CPU list directory
88+
(multiple containers can share a CPU list.) Each CPU list entry
8989
contains a <code>tasks</code> file that tracks process IDs of the container
9090
subcommand(s) that acquired the CPU list. When the child process exits,
9191
the <code>cmk</code> wrapper program clears its PID from the tasks file. If the
9292
wrapper program is killed before it can perform this cleanup step, a
9393
separate periodic reconciliation program detects this condition and cleans
94-
the tasks file accordingly. A file system lock guards against conflicting
94+
the tasks file accordingly. A lock mechanism guards against conflicting
9595
concurrent modifications.</p>
9696
<p>The rest of this document discusses the high-level design of CMK.</p>
97-
<p>For more information about the structure of state on disk, see
97+
<p>For more information about the structure of state in the configmap, see
9898
<a href="config.html">The cmk configuration directory</a>.</p>
9999
<p>For more information about how to use the <code>cmk</code> wrapper program, see
100100
<a href="cli.html">Using the cmk command-line tool</a>.</p>
@@ -111,10 +111,6 @@ <h2>
111111
times on the order of ones to tens of seconds or greater.</p>
112112
</li>
113113
<li>
114-
<p>After a workload has started executing, there is no need to
115-
dynamically update its CPU assignments.</p>
116-
</li>
117-
<li>
118114
<p>Machines running workloads explicitly isolated by <code>cmk</code> must be guarded
119115
against other workloads that <em>do not</em> consult the <code>cmk</code> tool chain.
120116
The recommended way to do this is for the operator to taint the node.
@@ -157,7 +153,7 @@ <h2>
157153
</li>
158154
<li>
159155
<p>Interoperate well with the <code>isolcpus</code> kernel parameter. When
160-
initializing the CMK configuration directory, prefer to align
156+
initializing the CMK configuration configmap, prefer to align
161157
exclusive CPU lists with fully-isolated physical cores.</p>
162158
</li>
163159
<li>
@@ -256,10 +252,6 @@ <h2>
256252
<td align="left">This should be extremely rare in practice, but it relates to the above scenario. If a PID of a <code>cmk</code> subcommand leaks as described above and is recycled by the kernel before <code>reconcile</code> runs, then when <code>reconcile</code> does run, it will see that the PID refers to a running process and will not remove that PID from the <code>tasks</code> file. There is currently no mitigation in place to protect against this scenario.</td>
257253
</tr>
258254
<tr>
259-
<td align="left">CMK <code>init</code> flag values for <code>--num-shared-cores</code> and <code>--num-exclusive-cores</code> must be positive integers.</td>
260-
<td align="left">Zero is unsupported by the tool chain.</td>
261-
</tr>
262-
<tr>
263255
<td align="left">The flag values for <code>--interval</code> (used in <code>cmk reconcile</code> and <code>cmk node-report</code>) must be integers.</td>
264256
<td align="left">Fractional seconds are not supported by the tool chain.</td>
265257
</tr>

0 commit comments

Comments
 (0)