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.6.tar.gz (23.5 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.6-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pirogue_admin_client-2.0.6.tar.gz
Algorithm Hash digest
SHA256 5b08fb736b0abc8ae412a432e756fbd1894aa32bf3d2fbdfbddf7dedd5ca685c
MD5 48268b64161632b26eb7293f2c361b0b
BLAKE2b-256 a809834b93fd5039f96ff6a7dfa15865789f2f9f84592f57ba66f71e09b7e438

See more details on using hashes here.

Provenance

The following attestation bundles were made for pirogue_admin_client-2.0.6.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.6-py3-none-any.whl.

File metadata

File hashes

Hashes for pirogue_admin_client-2.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 5196c96b9723ab82890bb8fe468ec875d695305333dd309871b7def7769405d4
MD5 49c29b157ecf74bd3f582f5c21000fa1
BLAKE2b-256 93ecef54112f56bf3ea37d20fb42bc0babe7d3f00c5ddd10be6e64fb4fca4047

See more details on using hashes here.

Provenance

The following attestation bundles were made for pirogue_admin_client-2.0.6-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