Skip to content

Repository files navigation

CreateAnnouncements

A Python CLI tool to manage announcements across multiple Waldur deployments simultaneously.

Overview

This tool allows you to create, update, delete, and list announcements across multiple Waldur instances in one go. Useful for organizations managing several Waldur deployments that need consistent communication across all platforms.

Requirements

  • Python 3.6+
  • requests library
pip install requests

Setup

  1. Clone the repository:
   git clone https://github.com/ahti87/CreateAnnouncements.git
   cd CreateAnnouncements
  1. Create deployments.json with your Waldur instances:
   [
       {"url": "https://waldur1.example.com", "token": "your-api-token"},
       {"url": "https://waldur2.example.com", "token": "another-token"}
   ]
  1. Create announcement.json with your announcement content (required for create/update):
   {
       "start_date": "2026-01-27T00:00:00Z",
       "end_date": "2026-02-03T00:00:00Z",
       "content": "Scheduled maintenance on Friday 10:00-12:00 UTC"
   }

Usage

python create_announcement.py <action> [uuid]

Actions

Action Description UUID required
list List all announcements No
create Create a new announcement No
update Update an existing announcement Yes
delete Delete an announcement Yes

Examples

List all announcements:

python create_announcement.py list
https://waldur1.example.com:
  - abc123: Scheduled maintenance on Friday 10:00-12:00... (2026-01-27 to 2026-02-03)
  - def456: New feature available: Project quotas... (2026-01-20 to 2026-01-30)

https://waldur2.example.com:
  - ghi789: Scheduled maintenance on Friday 10:00-12:00... (2026-01-27 to 2026-02-03)

Create an announcement:

python create_announcement.py create
✓ https://waldur1.example.com - Created: abc123-def456-...
✓ https://waldur2.example.com - Created: ghi789-jkl012-...

Update an announcement:

python create_announcement.py update abc123-def456-...
✓ https://waldur1.example.com - Updated: abc123-def456-...
✓ https://waldur2.example.com - Updated: abc123-def456-...

Delete an announcement:

python create_announcement.py delete abc123-def456-...
✓ https://waldur1.example.com - Deleted: abc123-def456-...
✓ https://waldur2.example.com - Deleted: abc123-def456-...

API Token

You need a Waldur API token with admin privileges to manage announcements. Generate one from your Waldur instance under User profile → Credentials → API Token.

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages