Organizations & Reservations
Organizations provide collaborative workspaces on the Primitive platform, while reservations enable dedicated hardware access for critical workloads.
Organizations
Organizations are collaborative workspaces that group users, projects, hardware, and resources together for shared access and management.
primitive organizations list
List all organizations you belong to or have access to.
primitive organizations list
Organization Information Includes:
- Organization name and identifier
- Your role and permissions
- Member count and activity
- Available hardware resources
- Storage usage and limits
- Subscription and billing information
Organization Structure
Organizations contain:
- Members: Users with various roles and permissions
- Projects: Collaborative workspaces for related tasks
- Hardware: Registered devices shared among members
- Resources: Files, datasets, and shared assets
- Settings: Policies, limits, and configuration
- Billing: Subscription and usage tracking
Organization Roles
Common organization roles include:
- Owner: Full administrative control
- Admin: User and resource management
- Member: Standard access to resources
- Viewer: Read-only access to projects and resources
- Guest: Limited access to specific projects
Organization Benefits
Organizations enable:
- Resource Sharing: Share hardware, files, and projects
- Collaborative Development: Team-based project work
- Access Control: Manage permissions and security
- Resource Pooling: Efficient use of computing resources
- Cost Management: Shared billing and usage tracking
- Policy Enforcement: Organization-wide settings and limits
Hardware in Organizations
Device Assignment
Hardware devices are registered to specific organizations:
# Register hardware to organization
primitive hardware register --organization my-team
# List organization hardware
primitive hardware list
# Check device organization
primitive hardware get my-device
Shared Access
Organization members can access shared hardware:
- Execute commands on organization devices
- Schedule jobs on available hardware
- Monitor shared resource usage
- Collaborate on hardware-intensive tasks
Resource Allocation
Organizations manage hardware resources through:
- Access Policies: Who can use which devices
- Scheduling Priority: Job queue management
- Resource Limits: Usage quotas and restrictions
- Monitoring: Tracking utilization and performance
Reservations
Reservations provide dedicated access to hardware resources for critical workloads or guaranteed availability.
primitive reservations <subcommand>
Manage hardware reservations for dedicated resource access.
# List current reservations
primitive reservations list
# Create new reservation
primitive reservations create
# Cancel existing reservation
primitive reservations cancel <reservation-id>
# View reservation details
primitive reservations get <reservation-id>
Reservation Types
Time-Based Reservations:
- Reserve hardware for specific time periods
- Guarantee availability during reserved windows
- Prevent other jobs from using reserved resources
- Ideal for scheduled workloads or deadlines
Resource-Based Reservations:
- Reserve specific hardware capabilities
- Ensure minimum resource availability
- Priority access to matching hardware
- Suitable for resource-intensive applications
Project Reservations:
- Dedicate hardware to specific projects
- Long-term resource allocation
- Consistent execution environment
- Better for ongoing development work
Reservation Benefits
Reservations provide:
- Guaranteed Availability: Assured access when needed
- Performance Consistency: Dedicated resources without contention
- Scheduling Predictability: Plan work around reserved time slots
- Resource Isolation: Avoid interference from other workloads
- Priority Access: Higher priority for job scheduling
Working with Organizations
Joining Organizations
Organizations can be joined through:
- Invitations: Received via email or platform notifications
- Applications: Request to join public organizations
- Creation: Start new organizations for your teams
Organization Management
Organization owners and admins can:
- Manage Members: Add, remove, and modify user roles
- Configure Settings: Set policies and resource limits
- Monitor Usage: Track resource consumption and costs
- Manage Hardware: Register and configure shared devices
- Control Access: Define permissions and restrictions
Collaboration Workflows
Organizations enable collaborative workflows:
- Shared Projects: Multiple users working on same projects
- Resource Pooling: Efficient use of combined hardware
- Knowledge Sharing: Common repositories and documentation
- Coordinated Scheduling: Managed access to shared resources
Working with Reservations
Creating Reservations
Reservations are typically created through:
- Web Interface: Interactive reservation management
- API Integration: Programmatic reservation control
- CLI Commands: Command-line reservation tools
Reservation Planning
Plan reservations considering:
- Workload Requirements: CPU, memory, storage needs
- Time Constraints: Deadlines and duration estimates
- Resource Availability: Current and projected usage
- Cost Considerations: Reservation pricing and budgets
- Team Coordination: Shared resource scheduling
Reservation Monitoring
Monitor reservations through:
- Status Tracking: Active, upcoming, expired reservations
- Usage Analytics: Actual vs. reserved resource usage
- Performance Metrics: Execution efficiency during reservations
- Cost Analysis: Reservation value and optimization opportunities
Integration Workflows
Organization Setup
# 1. List current organizations
primitive organizations list
# 2. Configure hardware for organization
primitive hardware register --organization my-team
# 3. Verify organization setup
primitive hardware list
# 4. Check access to organization resources
primitive projects list
Collaborative Development
# 1. Join organization workspace
primitive organizations list
# 2. Access shared projects
primitive projects list
# 3. Use organization hardware
primitive hardware list
primitive exec shared-server "echo 'Hello from organization device'"
# 4. Share files with team
primitive files upload --key-prefix "team-project/" ./shared-code.py
Resource Reservation
# 1. Check hardware availability
primitive hardware list
# 2. Plan reservation requirements
# 3. Create reservation (via web interface)
# 4. Monitor reservation status
primitive reservations list
# 5. Use reserved resources
primitive exec reserved-device "./critical-workload.sh"
Troubleshooting
Organization Access Issues
Cannot See Organization:
# Check current organizations
primitive organizations list
# Verify authentication
primitive whoami
# Contact organization admin for access
Permission Denied:
# Check your role in organization
primitive organizations list
# Verify specific permissions needed
# Contact admin to adjust permissions
Hardware Access Issues
Cannot Access Organization Hardware:
# List available hardware
primitive hardware list
# Check device organization assignment
primitive hardware get device-name
# Verify organization membership
primitive organizations list
Device Not Available:
# Check if device is reserved
primitive reservations list
# Verify device status
primitive hardware get device-name
# Check with organization admin
Reservation Issues
Reservation Conflicts:
# Check existing reservations
primitive reservations list
# Verify time slots and resources
# Coordinate with team members
Reservation Not Working:
# Verify reservation is active
primitive reservations get reservation-id
# Check hardware status
primitive hardware list
# Contact support if issues persist
Best Practices
- Organization Planning: Design organizations around team structure and projects
- Role Management: Assign appropriate roles and permissions
- Resource Sharing: Coordinate hardware usage among team members
- Reservation Strategy: Plan reservations based on actual needs
- Cost Optimization: Monitor usage and optimize resource allocation
- Communication: Coordinate with team on shared resource usage
- Documentation: Maintain clear policies and procedures
Security Considerations
- Access Control: Organizations enforce strict access controls
- Data Isolation: Projects and data are isolated between organizations
- Audit Logging: All activities are logged for security and compliance
- Resource Protection: Prevent unauthorized access to organization resources
- Billing Security: Protect payment and billing information
- Member Verification: Ensure proper identity verification for sensitive organizations
Example Workflows
Team Organization Setup
# 1. Create or join organization (via web interface)
# 2. Register team hardware
primitive hardware register --organization engineering-team
# 3. Verify organization setup
primitive organizations list
primitive hardware list
# 4. Begin collaborative work
primitive projects list
Resource Coordination
# 1. Check team resources
primitive organizations list
primitive hardware list
# 2. Plan resource usage
primitive reservations list
# 3. Coordinate with team
# 4. Execute work on shared resources
primitive exec team-server "./build-project.sh"
# 5. Share results
primitive files upload --key-prefix "results/" ./output/
Reservation Management
# 1. Assess resource needs
primitive hardware list
# 2. Check availability
primitive reservations list
# 3. Create reservation (via web interface)
# 4. Use reserved resources
primitive exec reserved-device "./important-computation.py"
# 5. Monitor and optimize
primitive hardware systeminfo