mirror of
https://github.com/coder/registry.git
synced 2026-06-02 20:48:14 +00:00
main
2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
bbd18ac870 |
[ImgBot] Optimize images (#641)
## Beep boop. Your images are optimized! Your image file size has been reduced 🎉 <details> <summary> Details </summary> | File | Before | After | Percent reduction | |:--|:--|:--|:--| | /.icons/filebrowser.svg | 5.38kb | 3.08kb | 42.76% | | /.icons/nomad.svg | 0.38kb | 0.26kb | 31.79% | | /.icons/vault.svg | 0.49kb | 0.37kb | 24.31% | | /.icons/proxmox.svg | 12.52kb | 9.49kb | 24.23% | | /.icons/copyparty.svg | 8.28kb | 6.32kb | 23.71% | | /.icons/devcontainers.svg | 0.56kb | 0.44kb | 21.39% | | /.icons/openwebui.svg | 0.29kb | 0.23kb | 19.11% | | /.icons/scaleway.svg | 0.89kb | 0.77kb | 13.80% | | /.icons/perplexica.svg | 0.21kb | 0.19kb | 10.65% | | /.icons/positron.svg | 0.71kb | 0.64kb | 10.18% | | /.icons/azure.svg | 2.05kb | 1.86kb | 9.60% | | /.icons/lxc.svg | 1.22kb | 1.12kb | 8.01% | | /.icons/fleet.svg | 5.57kb | 5.23kb | 6.12% | | /.icons/gateway.svg | 4.20kb | 3.99kb | 4.86% | | /.icons/rustdesk.svg | 1.32kb | 1.26kb | 4.65% | | /.icons/tasks.svg | 0.44kb | 0.42kb | 4.42% | | /.icons/kasmvnc.svg | 0.80kb | 0.77kb | 4.27% | | /.icons/dotfiles.svg | 0.59kb | 0.56kb | 3.83% | | /.icons/vsphere.svg | 1.08kb | 1.04kb | 3.69% | | /.icons/rdp.svg | 4.63kb | 4.47kb | 3.40% | | /.icons/mux.svg | 1.75kb | 1.70kb | 2.46% | | /.icons/aws.svg | 3.22kb | 3.14kb | 2.34% | | /.icons/gemini.svg | 2.76kb | 2.71kb | 2.12% | | /.icons/kiro.svg | 1.21kb | 1.19kb | 1.69% | | /.icons/slack.svg | 1.00kb | 0.98kb | 1.37% | | /.icons/digital-ocean.svg | 0.93kb | 0.92kb | 1.15% | | /.icons/amazon-q.svg | 2.09kb | 2.07kb | 0.98% | | /.icons/akamai.svg | 0.83kb | 0.82kb | 0.94% | | /.icons/auto-dev-server.svg | 4.54kb | 4.49kb | 0.93% | | /.icons/desktop.svg | 0.53kb | 0.52kb | 0.93% | | /.icons/sourcegraph-amp.svg | 0.56kb | 0.56kb | 0.87% | | /.icons/nextflow.svg | 0.68kb | 0.67kb | 0.87% | | /registry/coder/.images/avatar.svg | 0.60kb | 0.59kb | 0.82% | | /.icons/coder.svg | 0.60kb | 0.59kb | 0.82% | | /.icons/electric-plug-emoji.svg | 0.24kb | 0.24kb | 0.81% | | /.icons/hetzner.svg | 5.47kb | 5.43kb | 0.80% | | /.icons/cmux.svg | 17.58kb | 17.46kb | 0.72% | | /.icons/box-emoji.svg | 4.62kb | 4.59kb | 0.66% | | /.icons/openai.svg | 2.89kb | 2.87kb | 0.61% | | /.icons/auggie.svg | 4.78kb | 4.75kb | 0.57% | | /.icons/airflow.svg | 3.24kb | 3.23kb | 0.57% | | /.icons/jetbrains.svg | 0.77kb | 0.76kb | 0.51% | | /.icons/git.svg | 0.78kb | 0.78kb | 0.50% | | /.icons/zed.svg | 0.88kb | 0.88kb | 0.44% | | /.icons/pgadmin.svg | 2.95kb | 2.94kb | 0.40% | | /registry/coder/.images/aws-devcontainer-architecture.svg | 123.63kb | 123.14kb | 0.39% | | /registry/coder/.images/gcp-devcontainer-architecture.svg | 123.63kb | 123.15kb | 0.39% | | /.icons/windsurf.svg | 1.11kb | 1.11kb | 0.35% | | /.icons/opencode.svg | 0.56kb | 0.56kb | 0.35% | | /.icons/folder.svg | 0.28kb | 0.28kb | 0.35% | | /registry/coder-labs/.images/avatar.svg | 3.69kb | 3.68kb | 0.32% | | /.icons/jupyter.svg | 6.50kb | 6.48kb | 0.32% | | /.icons/cloud-devops.svg | 35.08kb | 34.99kb | 0.26% | | /cmd/.icons/docker.svg | 1.14kb | 1.13kb | 0.26% | | /.icons/docker.svg | 1.14kb | 1.13kb | 0.26% | | /.icons/exoscale.svg | 0.42kb | 0.42kb | 0.23% | | /.icons/personalize.svg | 1.89kb | 1.89kb | 0.21% | | /cmd/.icons/goose.svg | 3.07kb | 3.07kb | 0.19% | | /.icons/goose.svg | 3.07kb | 3.07kb | 0.19% | | /.icons/nexus-repository.svg | 26.65kb | 26.60kb | 0.18% | | /.icons/claude.svg | 2.80kb | 2.80kb | 0.14% | | /.icons/kubernetes.svg | 7.54kb | 7.53kb | 0.09% | | /.icons/jfrog.svg | 6.76kb | 6.76kb | 0.04% | | /.icons/aider.svg | 14.16kb | 14.16kb | 0.03% | | /.icons/antigravity.svg | 2,346.99kb | 2,346.81kb | 0.01% | | | | | | | **Total :** | **2,827.25kb** | **2,816.16kb** | **0.39%** | </details> --- [📝 docs](https://imgbot.net/docs) | [:octocat: repo](https://github.com/imgbot/ImgBot) | [🙋🏾 issues](https://github.com/imgbot/ImgBot/issues) | [🏪 marketplace](https://github.com/marketplace/imgbot) <i>~Imgbot - Part of [Optimole](https://optimole.com/) family</i> Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com> Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com> |
||
|
|
ce039f64df |
Add Sonatype Nexus repository integration module (#262)
# Add Sonatype Nexus Repository Integration Module ## Summary Implements a Coder module for Sonatype Nexus Repository Manager integration that automatically configures Maven, npm, PyPI, and Docker registries for development workspaces. ## Demo Video & Screenshots https://github.com/user-attachments/assets/2c51f229-d34d-483b-a0e9-f4e0d79332c2  ## Features - ✅ **Maven Support**: Automatic `settings.xml` configuration - ✅ **npm Support**: Automatic `.npmrc` configuration with scoped packages - ✅ **PyPI Support**: Automatic `pip.conf` configuration - ✅ **Docker Support**: Registry authentication setup - ✅ **Flexible Configuration**: Support for multiple repositories per package manager - ✅ **Secure Credentials**: API token and password support - ✅ **Username Options**: Configurable username field (username or email) ## Nexus Repository Manager Requirements ### Version Requirements **Yes, this module requires Nexus Repository Manager Pro version** for full functionality, though basic features work with the Community Edition (OSS). ### Supported Authentication Methods This module supports **4 authentication methods**: 1. **User Token Authentication** (Recommended - Pro only) - Enhanced security with two-part tokens - Ideal for CI/CD and automated environments - Requires `nx-usertoken-current` privilege 2. **API Token Authentication** (Pro only) - Single-use access tokens via REST API - Programmatic token generation and management 3. **Basic Authentication** (OSS & Pro) - Standard HTTP Basic Auth with username/password - Works with both OSS and Pro versions 4. **Base64 Encoded Credentials** (OSS & Pro) - Base64 encoded `username:password` format - Compatible with npm and other package managers ### Testing Instructions #### Prerequisites - Nexus Repository Manager instance (OSS or Pro) - Admin access to configure repositories - Test repositories for each package manager you want to test #### Setup Test Environment 1. **Create Test Repositories** in your Nexus instance: - Maven: `maven-public`, `maven-releases` - npm: `npm-public`, `@company:npm-private` - PyPI: `pypi-public`, `pypi-private` - Docker: `docker-public`, `docker-private` 2. **Configure Authentication**: - For Pro: Generate user tokens via UI (User menu → User Token) - For OSS: Use username/password or base64 encoded credentials - Set up appropriate permissions for test repositories 3. **Test the Module**: ```hcl module "nexus" { source = "registry.coder.com/mavrickrishi/nexus/coder" version = "1.0.0" agent_id = coder_agent.main.id nexus_url = "https://your-nexus-instance.com" nexus_password = var.nexus_api_token # or password package_managers = { maven = ["maven-public", "maven-releases"] npm = ["npm-public", "@company:npm-private"] pypi = ["pypi-public", "pypi-private"] docker = ["docker-public", "docker-private"] } } ``` 4. **Verify Configuration**: - Check generated config files in workspace - Test package installation from configured repositories - Verify authentication works for each package manager #### EC2 Deployment Testing Tested by deploying on EC2 instance with: - Ubuntu 22.04 LTS - Nexus Repository Manager Pro - All package managers (Maven, npm, PyPI, Docker) - Both token and basic authentication methods ## Usage Example ```hcl module "nexus" { source = "registry.coder.com/mavrickrishi/nexus/coder" version = "1.0.0" agent_id = coder_agent.main.id nexus_url = "https://nexus.company.com" nexus_password = var.nexus_api_token package_managers = { maven = ["maven-public", "maven-releases"] npm = ["npm-public", "@company:npm-private"] pypi = ["pypi-public", "pypi-private"] docker = ["docker-public", "docker-private"] } } ``` ## Testing - ✅ 11 comprehensive tests covering all functionality - ✅ Variable validation tests - ✅ Package manager configuration tests - ✅ Error handling tests - ✅ All tests passing - ✅ EC2 deployment tested ## Files Added - `registry/mavrickrishi/modules/nexus/main.tf` - Main module configuration - `registry/mavrickrishi/modules/nexus/README.md` - Complete documentation - `registry/mavrickrishi/modules/nexus/main.test.ts` - Test suite ## Checklist - [x] Module follows existing patterns and conventions - [x] Comprehensive test coverage (11 tests) - [x] Complete documentation with examples - [x] Input validation and error handling - [x] Secure credential handling - [x] All tests passing - [x] Demo video included - [x] Screenshots added - [x] Testing instructions provided - [x] Authentication methods documented - [x] EC2 deployment tested Closes #202 /claim #202 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Atif Ali <me@matifali.dev> Co-authored-by: DevCats <christofer@coder.com> Co-authored-by: DevCats <chris@dualriver.com> |