# Install ccm with Homebrew, MacPorts

Create and destroy an Apache Cassandra cluster on localhost. Version 3.1.5 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:ccm
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ccm
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install ccm
```

  Evidence: MacPorts ports tree: databases/ccm/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:ccm
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/ccm>
- **Version:** 3.1.5
- **Source summary:** Create and destroy an Apache Cassandra cluster on localhost
- **Homepage:** <https://github.com/apache/cassandra-ccm>
- **Repository:** <https://github.com/apache/cassandra-ccm>
- **Upstream docs:** <https://github.com/apache/cassandra-ccm#readme>
- **License:** Apache-2.0
- **Source archive:** <https://files.pythonhosted.org/packages/f1/12/091e82033d53b3802e1ead6b16045c5ecfb03374f8586a4ae4673a914c1a/ccm-3.1.5.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- ccm (cli)
- ccm (alias)

## Dependencies

- libyaml
- python@3.14

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.1.5
- Local data: ok
- Upstream repository: https://github.com/apache/cassandra-ccm
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

CCM, the Cassandra Cluster Manager, is a Python command-line tool for creating, launching, testing, and destroying local Apache Cassandra clusters. It matters in package-manager catalogs because it packages a repeatable local Cassandra lab into a single executable rather than leaving users to hand-wire several Cassandra nodes.

### Project history

The official Apache repository describes CCM as a script and library for creating, managing, and destroying a small Cassandra cluster on a local box for testing. The GitHub repository was created in 2011 and is now hosted under the Apache organization as apache/cassandra-ccm.

The install documentation notes that CCM predates the modern Python packaging defaults and then explains current Python 3, virtualenv, and editable-install workflows, which reflects the project's long life across Cassandra and Python eras.

### Adoption history

The official install document points users to PyPI and Homebrew packages, so CCM has been distributed both as a Python package and as a Unix package-manager formula. The input package facts also list Homebrew and MacPorts package names.

### How it is used

Typical usage creates a named Cassandra cluster for a given Cassandra release or source tree, populates it with local nodes, starts the nodes, inspects rings or logs, and later removes the cluster. By default, node data and configuration live under ~/.ccm/<cluster_name>/, while downloaded Cassandra releases are cached under ~/.ccm/repository/.

### Why package nerds care

CCM is a good example of a package-manager utility whose value is not a single algorithm but a reproducible local topology. It turns Cassandra cluster setup into a developer-facing CLI workflow and is especially useful for tests, demos, compatibility checks, and package maintainers who need disposable Cassandra environments.

### Timeline

- 2011: Official GitHub repository created.
- 2010s: README documents local multi-node Cassandra cluster creation and versioned Cassandra downloads.
- 2020s: Install guide documents Python 3, virtualenv, Apple Silicon, and modern macOS caveats.

### Related projects

- Apache Cassandra is the database system CCM manages locally.
- DataStax Enterprise and Hyper Converged Database are mentioned by the README as third-party cluster types supported through CCM extensions.

### Sources

- <https://api.github.com/repos/apache/cassandra-ccm>
- <https://github.com/apache/cassandra-ccm>
- <https://github.com/apache/cassandra-ccm#readme>
- <https://formulae.brew.sh/api/formula/ccm.json>


## Security Notes

infrastructure mutation or orchestration signal.

- **Geiger risk:** orange / medium
- infrastructure mutation or orchestration signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.ccm/<cluster_name>/
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** ccm
- **Version Scheme:** 0
- **Revision:** 5
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- MacPorts - ccm: normalized package name match | MacPorts ports tree: databases/ccm/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [cmus](https://www.automicvault.com/pkg/brew/cmus/) - Shares av.db curated category or tags: audio, cli, media, music-player, terminal.
- [moc](https://www.automicvault.com/pkg/brew/moc/) - Shares av.db curated category or tags: audio, cli, media, music-player, terminal.
- [mufetch](https://www.automicvault.com/pkg/brew/mufetch/) - Shares av.db curated category or tags: cli, media, music, terminal.
- [abcmidi](https://www.automicvault.com/pkg/brew/abcmidi/) - Shares av.db curated category or tags: cli, media, music.
- [adplay](https://www.automicvault.com/pkg/brew/adplay/) - Shares av.db curated category or tags: audio, cli, media, music-player.
- [audacious](https://www.automicvault.com/pkg/brew/audacious/) - Shares av.db curated category or tags: audio, cli, media, music-player.
- [cava](https://www.automicvault.com/pkg/brew/cava/) - Shares av.db curated category or tags: audio, cli, media, terminal.
- [chordii](https://www.automicvault.com/pkg/brew/chordii/) - Shares av.db curated category or tags: cli, media, music.
- [kew](https://www.automicvault.com/pkg/brew/kew/) - Both packages work with overlapping file formats or content types. Shared terms: audio, cli, media, music, music-player.
- [termusic](https://www.automicvault.com/pkg/brew/termusic/) - Both packages work with overlapping file formats or content types. Shared terms: audio, cli, media, music, music-player.
- [bandcamp-dl](https://www.automicvault.com/pkg/brew/bandcamp-dl/) - Both packages touch the same language runtime or ecosystem. Shared terms: audio, cli, media, music, python.

## Combined YAML source

View the package source record on GitHub. [combined/ccm.yml](https://github.com/automic-vault/db/blob/main/combined/ccm.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
