Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/univ-of-utah-marriott-library-apple/jctl
`jctl` uses `python-jamf` to select objects to create, delete, print and update. It allows performing Jamf Pro repetitive tasks quickly and provides options not available in the web GUI. It is similar to SQL statements, but far less complex.
https://github.com/univ-of-utah-marriott-library-apple/jctl
automation autopkg installer-packages jamf jamf-pro jamf-pro-api macos patch python
Last synced: 12 days ago
JSON representation
`jctl` uses `python-jamf` to select objects to create, delete, print and update. It allows performing Jamf Pro repetitive tasks quickly and provides options not available in the web GUI. It is similar to SQL statements, but far less complex.
- Host: GitHub
- URL: https://github.com/univ-of-utah-marriott-library-apple/jctl
- Owner: univ-of-utah-marriott-library-apple
- License: mit
- Created: 2020-02-14T23:02:29.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-02-05T22:11:35.000Z (9 months ago)
- Last Synced: 2024-10-25T06:25:30.206Z (19 days ago)
- Topics: automation, autopkg, installer-packages, jamf, jamf-pro, jamf-pro-api, macos, patch, python
- Language: Python
- Homepage:
- Size: 375 KB
- Stars: 50
- Watchers: 6
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# jctl
## Introduction
`jctl` is a command line tool that performs CRUD (Create/Read/Update/Delete) operations on a [Jamf Pro or Jamf Cloud](https://www.jamf.com/) server. It can automate repetitive tasks and provide options not available in the web GUI. It uses and is the primary driver of [`python-jamf`](https://github.com/univ-of-utah-marriott-library-apple/python-jamf), which is a Python 3 module for the [Jamf Pro Classic API](https://www.jamf.com/resources/videos/an-introduction-to-the-classic-api/).
There are a few other tools that are part of this project. `pkgctl` is automates various operations with packages, such as promotion and creating patch definitions. `patch.py` is a deprecated script designed to automate the patching process. It is still part of the project because it can do a few things that `jctl` can't. However, it is not being tested. `update_asset_tags.py` was demoed at the 2021 JNUC presentation [_Turn 1000 clicks into 1 with python-jamf and jctl_](https://www.youtube.com/watch?v=2YLriNwyP3s). We decided to include it here. It is not being tested either.
`jctl` only supports 56 Jamf Pro record types. `python-jamf` can access all record types. `python-jamf` stores the Jamf Pro credentials in the keychain using [keyring](https://github.com/jaraco/keyring) (instead of cleartext, like all other Jamf API projects that we know of).
## Quick Start
If you don't have Python installed, you need to read about [Installing Python](https://github.com/univ-of-utah-marriott-library-apple/jctl/wiki/Installing-Python) on the wiki.
### Installing
- Install Module & Requirements: `sudo pip3 install jctl`
- On your Jamf Pro server create a Jamf Pro API User
- Config: `conf-python-jamf`
- Enter hostname, username, and password
- Test: `conf-python-jamf -t`### Uninstalling
Uninstalling `jctl` is easy if you installed it via `pip`. `pip` is the **P**ackage **I**nstaller for **P**ython.
To uninstall `jctl` run the following command:
```bash
sudo pip3 uninstall jctl
```### Upgrading
Upgrading `jctl` is easy if you installed it via `pip`. `pip` is the **P**ackage **I**nstaller for **P**ython.
To upgrade `jctl` run the following command:
```bash
sudo pip3 install --upgrade jctl
```## Getting Help
### Wiki
#### More Documentation
For further in-depth details please check out [the wiki](https://github.com/univ-of-utah-marriott-library-apple/jctl/wiki).
#### Searching the wiki
To search this wiki use the "Search" field in the GitHub navigation bar above. Then on the search results page select the "Wiki" option or [click here](https://github.com/univ-of-utah-marriott-library-apple/jctl/search?q=&type=Wikis&utf8=✓) and search.
### MacAdmin Slack Channel
If you have additional questions, or need more help getting started, post a question on the MacAdmin's Slack [jctl](https://macadmins.slack.com/archives/C01C8KVV2UD) channel.
## Latest Status
See the [releases](https://github.com/univ-of-utah-marriott-library-apple/jctl/releases) page for details.
See `jctl` [upgrade](https://github.com/univ-of-utah-marriott-library-apple/jctl/wiki/Installing#upgrading) documentation to upgrade to latest release.