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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pirogue_admin_client-2.0.7.tar.gz
  • Upload date:
  • Size: 24.2 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.7.tar.gz
Algorithm Hash digest
SHA256 c68855d73f0fff2007afd57e0f9518140f43d5e0efd6a80e057ed83485e262e3
MD5 b5f771bf5007da2f9c4299480297c15f
BLAKE2b-256 a6012820576c7af72a7ebe42ea18bead732748e392e501cfbc5febfb74ffcdf1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pirogue_admin_client-2.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 87a2e35ad800a4da9dd14dcb617882997f952221d063af6768db780f2a906279
MD5 c381dd00bbcc10f79ca2f8309609d785
BLAKE2b-256 ae268040dbcdd833229d5a1b1f1302228f578ccf05abe593c9bf0120de51aa3b

See more details on using hashes here.

Provenance

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