Skip to content

Commit b70524c

Browse files
Donation to Apache Cassandra and ASF
Reassignment of copyright, where approved, and relicensing. New repository will be github.com/apache/cassandra-ccm
1 parent cc8cb98 commit b70524c

26 files changed

+484
-0
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ ccm.egg-info/
1313
dse_creds.txt
1414
.eggs/
1515
junit.xml
16+
/nbproject/

NOTICE

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
Apache Cassandra Cluster Manager
2+
Copyright 2024 The Apache Software Foundation
3+
4+
This product includes software developed at
5+
The Apache Software Foundation (http://www.apache.org/).
6+
7+
8+
This product originates, before git sha
9+
cc8cb98b29f68d12c8b5fa093a33dc3b346873b3, from software from DataStax
10+
and other individual contributors, with copyright and license as follows:
11+
12+
Non-DataStax contributors are listed below. Those marked with
13+
asterisk have agreed to donate (copyright assign) their contributions to the
14+
Apache Software Foundation, signing CLAs when appropriate.
15+
16+
Kishan Karunaratne <[email protected]>
17+
Lucas Meneghel @lmr
18+
Joaquin Casares @joaquincasares
19+
Andrew Hust @nutbunnies
20+
Jaume Marhuenda <[email protected]>
21+
Daniel Compton <[email protected]> *
22+
??? @steveandwang
23+
Byron Clark <[email protected]> *
24+
Thibault Charbonnier @thibaultcha
25+
Greg Bestland @GregBestland
26+
??? @c-kodman
27+
Sandeep Tamhankar @stamhankar999
28+
Tomek Bujok @tombujok
29+
Pekka Enberg <[email protected]>
30+
Brian Weck @bweck
31+
Dimitri Krassovski <[email protected]> *
32+
??? @nattochaduke-yahoo
33+
??? @pydeveloper94
34+
Geet Kumar @gkumar7
35+
??? @scharron
36+
Eric Stevens @MightyE
37+
38+
??? @ezacks-barracuda
39+
Tetsuya Morimoto @t2y
40+
Casey Marshall @csmlyve
41+
??? @jillichrome
42+
??? @ekooiker
43+
Chris Bargren <[email protected]>
44+
Xian Yi Teng <[email protected]>
45+
Stefano Ortolani @ostefano *
46+
47+
??? @hatokani2
48+
??? @jeremycnf
49+
Samuel Roberts @sproberts92
50+
Alexei Maridashvili <[email protected]> *
51+
Michael Hamm <[email protected]>
52+
Lerh Low @juiceblender
53+
Peter Palaga <[email protected]> *
54+
Hannu Kröger @hkroger *
55+
Jacob Fenwick <[email protected]>
56+
Ulises Cervino Beresi <[email protected]> *
57+
Jack Kingsman @jkingsman *
58+
Yasuharu Goto <[email protected]>
59+
David Sauer <[email protected]>
60+
Nick Bailey <[email protected]>
61+
Alex Popescu @al3xandru

README-CASSANDRA-17379.md.md

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
CCM (Cassandra Cluster Manager)
2+
CASSANDRA-17379 README
3+
====================================================
4+
5+
6+
---- 
7+
 
8+
9+
10+
WARNING - CCM configuration changes using updateconf does not happen according to CASSANDRA-17379
11+
-------------------------------------------------------------------------------------------------
12+
13+
After CASSANDRA-15234, to support the Python upgrade tests CCM updateconf is replacing
14+
new key name and value in case the old key name and value is provided.
15+
For example, if you add to config `permissions_validity_in_ms`, it will replace
16+
`permissions_validity` in default cassandra.yaml
17+
This was needed to ensure correct overloading as CCM cassandra.yaml has keys
18+
sorted lexicographically. CASSANDRA-17379 was opened to improve the user experience
19+
and deprecate the overloading of parameters in cassandra.yaml. In CASSANDRA 4.1+, by default,
20+
we refuse starting Cassandra with a config containing both old and new config keys for the
21+
same parameter. Start Cassandra with `-Dcassandra.allow_new_old_config_keys=true` to override.
22+
For historical reasons duplicate config keys in cassandra.yaml are allowed by default, start
23+
Cassandra with `-Dcassandra.allow_duplicate_config_keys=false` to disallow this. Please note
24+
that key_cache_save_period, row_cache_save_period, counter_cache_save_period will be affected
25+
only by `-Dcassandra.allow_duplicate_config_keys`. Ticket CASSANDRA-17949 was opened to decide
26+
the future of CCM updateconf post CASSANDRA-17379, until then - bear in mind that old replace
27+
new parameters' in cassandra.yaml when using updateconf even if
28+
`-Dcassandra.allow_new_old_config_keys=false` is set by default.
29+
30+
TLDR Do not exercise overloading of parameters in CCM if possible. Also, the mentioned changes
31+
are done only in master branch. Probably the best way to handle cassandra 4.1 in CCM at this
32+
point is to set `-Dcassandra.allow_new_old_config_keys=false` and
33+
`-Dcassandra.allow_duplicate_config_keys=false`
34+
to prohibit any kind of overloading when using CCM master and CCM released versions

ccmlib/__init__.py

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+

ccmlib/cluster.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
# ccm clusters
219
from __future__ import absolute_import
320

ccmlib/cluster_factory.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118

219
from __future__ import absolute_import
320

ccmlib/cmds/__init__.py

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+

ccmlib/cmds/cluster_cmds.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118

219
from __future__ import absolute_import
320

ccmlib/cmds/command.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118

219
from __future__ import absolute_import
320

ccmlib/cmds/node_cmds.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118

219
from __future__ import absolute_import
320

ccmlib/common.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
#
219
# Cassandra Cluster Management lib
320
#

ccmlib/dse_cluster.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
# ccm clusters
219

320
from __future__ import absolute_import

ccmlib/dse_node.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
# ccm node
219
from __future__ import absolute_import, with_statement
320

ccmlib/extension.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
PRE_CLUSTER_START_HOOKS = []
219
POST_CLUSTER_START_HOOKS = []
320
PRE_CLUSTER_STOP_HOOKS = []

ccmlib/node.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
# ccm node
219
from __future__ import absolute_import, with_statement
320

ccmlib/remote.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
#
219
# Remote execution helper functionality for executing CCM commands on a remote
320
# machine with CCM installed

ccmlib/repository.py

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
118
# downloaded sources handling
219
from __future__ import absolute_import, division, with_statement
320

0 commit comments

Comments
 (0)