Skip to main content

Administration client for the PiRogue

Project description

pirogue-admin-client

Command line ecosystem

This CLI is organized as follows: pirogue-admin-cli <section> <action> [parameters].

The --help command can be used on every piece of the CLI, e.g:

$ pirogue-admin-client --help
# main level help
$ pirogue-admin-client system --help
# system section level help
$ pirogue-admin-client system get-configuration --help
# get-configuration command help

Available commands

Access section

pirogue-admin-client access reset-administration-token
pirogue-admin-client access get-administration-token
pirogue-admin-client access get-administration-certifcate
pirogue-admin-client access get-administration-clis
pirogue-admin-client access create-user-access
pirogue-admin-client access get-user-access <idx>
pirogue-admin-client access list-user-accesses
pirogue-admin-client access delete-user-access <idx>
pirogue-admin-client access reset-user-access-token <idx>
pirogue-admin-client access get-permission-list
pirogue-admin-client access set-user-access-permissions <idx> <permissions> [...<permissions>]

System section

pirogue-admin-client system get-configuration-tree
pirogue-admin-client system get-configuration
pirogue-admin-client system get-operating-mode
pirogue-admin-client system get-status
pirogue-admin-client system get-packages-info
pirogue-admin-client system get-hostname
pirogue-admin-client system set-hostname <hostname>
pirogue-admin-client system get-locale
pirogue-admin-client system set-locale <locale>
pirogue-admin-client system get-timezone
pirogue-admin-client system set-timezone <timezone>
pirogue-adminc-client system list-connected-devices

External network section

pirogue-admin-client external-network enable-public-access --domain <public_domain_name> --email <administration_email>
pirogue-admin-client external-network disable-public-access

VPN section

pirogue-admin-client vpn list-peers
pirogue-admin-client vpn get-peer <id>
pirogue-admin-client vpn add-peer [--comment <comment>] [--public-key <pubkey>]
pirogue-admin-client vpn delete-peer <id>

WiFi section

pirogue-admin-client wifi get-configuration
pirogue-admin-client wifi set-configuration [--ssid <ssid>] [--passphrase <password>] [--country-code <cc>]

Isolated network section

pirogue-admin-client isolated-network open-port <incoming-port> [--outgoing-port <port>]
pirogue-admin-client isolated-network close-port [--incoming-port <port>] 
pirogue-admin-client isolated-network list-open-ports

Suricata section

pirogue-admin-client suricate-rules add-source <name> <url>
pirogue-admin-client suricate-rules del-source <name>
pirogue-admin-client suricate-rules list-sources

Dashboard section

pirogue-admin-client dashboard get-configuration
pirogue-admin-client dashboard set-configuration --password <password>

Writing your own tool

pirogue-admin-client is available as python library. Here are examples to illustrate its usage.

On a pirogue system

If the tool you're writing will run directly on a PiRogue system, you to not need authentication information, PirogueAdminClientAdapter will found them for you:

from pirogue_admin_client import PirogueAdminClientAdapter

paca = PirogueAdminClientAdapter()

# Now, use it as you want
current_config_map = paca.get_configuration()

# etc ...

Remote usage

If you plan to run your tool directly, you will need administration authentication information:

from pirogue_admin_client import PirogueAdminClientAdapter

pirogue_host = 'my-pirogue-instance.pts-project.org'
pirogue_port = 50051
pirogue_admin_token = "a-long-token-to-retrieve-on-pirogue"

paca = PirogueAdminClientAdapter(
    host=pirogue_host,
    port=pirogue_port,
    token=pirogue_admin_token,)

# Then, use it as usual
current_config_map = paca.get_configuration()

# etc ...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pirogue_admin_client-2.0.8.tar.gz (24.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pirogue_admin_client-2.0.8-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file pirogue_admin_client-2.0.8.tar.gz.

File metadata

  • Download URL: pirogue_admin_client-2.0.8.tar.gz
  • Upload date:
  • Size: 24.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pirogue_admin_client-2.0.8.tar.gz
Algorithm Hash digest
SHA256 97f30c3b4279286d417fa78b5c9f33aa8d12f87661250dc09a176e2ec776d43a
MD5 d4392458d56a8d2b20ac5f8da8f867e2
BLAKE2b-256 a129f9b999358331aa3043cbb65d6a6e83dc180492a94deef6b580ed473f0935

See more details on using hashes here.

Provenance

The following attestation bundles were made for pirogue_admin_client-2.0.8.tar.gz:

Publisher: publish-on-pypi.yml on PiRogueToolSuite/pirogue-admin-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pirogue_admin_client-2.0.8-py3-none-any.whl.

File metadata

File hashes

Hashes for pirogue_admin_client-2.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 7b7586ecfb2073cf7fad0ec32224c075b9dd103d7b13e3c1d28ca29206bc3c8a
MD5 b9b268ce62e6bef773f23e2de65bf985
BLAKE2b-256 8ca2d5f33d11ef27ca341b26533cc79e78d10b5ffb42242d29a744a01de63b79

See more details on using hashes here.

Provenance

The following attestation bundles were made for pirogue_admin_client-2.0.8-py3-none-any.whl:

Publisher: publish-on-pypi.yml on PiRogueToolSuite/pirogue-admin-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page