455 Commits

Author SHA1 Message Date
Michael Smith
496b09d93f
chore: sync newest module updates to registry (#84)
## Changes made
- Copied over all changes to existing modules, making sure to preserve
all relative path updates made specifically for the Registry repo
- Copied over all modules that were created since the last sync
(Windsurf, Devcontainers-CLI)
- Copied over changes from the `test.ts` file

## Notes
- This PR does not cover https://github.com/coder/modules/pull/426,
which contains a few changes around updating the Bash scripts and the
contributing README file. @f0ssel tagging you so that you're aware, but
I'll be taking care of the `CONTRIBUTING.md` file

---------

Co-authored-by: M Atif Ali <me@matifali.dev>
2025-05-09 11:28:38 -04:00
Michael Smith
7ea1f305af
chore: update README.md to have message about repo status 2025-05-08 13:54:47 -04:00
M Atif Ali
cab08fbffe
Merge pull request #19 from coder/dependabot/github_actions/crate-ci/typos-1.32.0 2025-05-05 13:02:09 +05:00
dependabot[bot]
efed015f3a
chore(deps): bump crate-ci/typos from 1.31.1 to 1.32.0
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.31.1 to 1.32.0.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/v1.31.1...v1.32.0)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-version: 1.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 07:43:28 +00:00
Michael Smith
ba6fea8ddb
chore: add logic to validate all modules (#11)
Closes https://github.com/coder/internal/issues/531

## Changes made
- Added functionality to validate the structure of module README files (frontmatter and the README body)
- Added a really basic snapshot-ish test for the module README body validation
- Updated README files that were previously violating README requirements (the old modules validation logic wasn't catching these)
- Changed `ValidationPhase` from an int to a string
2025-05-02 18:39:55 -04:00
Michael Smith
45dc925f8b
fix: update repo structure validation logic to disallow false positives (#10)
* refactor: update file structure to reflect new changes

* refactor: start splitting up files

* refactor: more domain splitting

* refactor: remove directory validation from contributors file

* fix: update repo structure checks

* fix: improve check for user namespace subdirectories

* docs: add missing words to comment

* docs: update typo

* refactor: make code easier to read

* fix: update README files

* fix: remove employer field entirely

* fix: make Github field optional

* refactor: rename files
2025-05-02 11:23:52 -04:00
Michael Smith
9e18a4e3a8
chore: add prettier/typo check to CI (#14)
## Changes made
- Added back CI steps for validating the codebase for typos and formatting
- Updated README validation CI step to be dependent on typo-checking step
- Updated configuration files as needed to support the new CI step
- Updated all files that were previously getting skipped over from improperly-set-up CI logic
2025-04-29 10:09:22 -04:00
Michael Smith
0ce1e7ab01
chore: add CONTRIBUTING.md file (#13)
## Changes made
- Added `CONTRIBUTING.md` file (mostly copied over from modules repo, with some parts reworded, and some sections added)

## Notes
- This definitely isn't the final version of the file (it should definitely change we have more Bash stuff added), but it felt like it's in a good enough spot for an initial release
2025-04-29 10:07:11 -04:00
Michael Smith
9404ad9a53
chore: add Success! The configuration is valid. (#16)
More work towards closing https://github.com/coder/internal/issues/532

## Changes made
- Added Bash script to run `terraform validate` on all relevant repos
- Updated `package.json` and CI to use the script
2025-04-29 09:51:04 -04:00
Michael Smith
c1e196c8b0
Merge pull request #17 from coder/mes/main-readme
chore: add main README.md file to project
2025-04-23 09:45:26 -04:00
Michael Smith
36acd61e40 fix: apply project rename to h1 title 2025-04-22 21:48:44 +00:00
Michael Smith
7d447d1672
Merge pull request #12 from coder/mes/site-check-script
fix: make site health check easier to use
2025-04-22 11:39:48 -04:00
Michael Smith
9780217535 fix: add back cron script 2025-04-22 15:07:02 +00:00
Michael Smith
494a25e688 fix: make site health check eaiser to use 2025-04-22 14:35:20 +00:00
Michael Smith
a6c1e9c5ea
Merge pull request #8 from coder/mes/script-disable
fix: disable cron site check
2025-04-17 19:18:48 -04:00
Michael Smith
87468aadb8 fix: disable cron site check 2025-04-17 23:07:43 +00:00
Michael Smith
fd0c2698b9
Merge pull request #7 from coder/mes/extra-readmes
fix: add missing README files for registry directory
2025-04-17 15:21:00 -04:00
Michael Smith
c4696836b6 fix: add missing README files for registry directory 2025-04-17 19:17:13 +00:00
Michael Smith
385966dc90
Merge pull request #6 from coder/mes/script-fix
fix: update script path
2025-04-17 14:18:50 -04:00
Michael Smith
5829345413 fix: update script path 2025-04-17 18:02:01 +00:00
Michael Smith
9e9d84db1b
Merge pull request #5 from coder/mes/structure-fix
## Changes made
- Removed GCP deploy script (for now). Will be added back once we have things configured
- Moved the Apache Airflow under the NatainData user namespace (looked through the GitHub history for modules and saw that she was the creator)
2025-04-17 11:12:04 -04:00
Michael Smith
9356d8c67f fix: restructure modules repo to reflect current status 2025-04-17 15:06:01 +00:00
Michael Smith
376664ca04
chore: migrate all Coder modules to Registry repo (#4)
Addresses part of https://github.com/coder/internal/issues/532 (but doesn't fully close it out).

This is a huge PR, but chunking it up seemed pointless, since we're largely copying over existing files. I'm going to try commenting on the main areas I think are worth paying attention to

## Changes made
- Migrated over all Coder modules from coder/modules, and put them in their correct user namespaces.
- Added README.md files to all newly-created user namespaces
- Updated all image paths for every image used, to make sure they don't break (I switched the paths programmatically, and then manually verified every README to guarantee this).
- Added README.md files for each contributor who previously made a module
- Updated our `tsconfig.json` file to use modern libraries when run from the server, and made a custom `tsconfig.json` just for the `windows-rdp` module (which has more restrictive browser concerns)
- Added CI step to run all the module tests we currently have

## Notes
- There were a lot of Bash script files that weren't carried over in this PR, partly because I don't know Bash well enough to know (1) whether they're still needed, or (2) modify them to account for the new file structure. Those can be brought over later.
- We had a `lint.ts` file that provided some light validation of some of the modules. After going through it, there were so many bugs and issues with the code that I legitimately think that it barely provided a safety net at all. I got rid of it entirely, with the intention of adding the functionality that was originally intended to the current validation logic (to be handled in a separate PR).
- I changed how we set up the `.images` directory, because it felt like it would be chaos if a bunch of users try to throw all their images in one giant directory, with no guidelines on how to do it. I instead made it so that images should be scoped by namespace, which felt a lot more manageable. The `.icons` directory is still at the top level, because realistically, there are only going to be so many types of icons referenced, so it's fine for those to be shared.
- I don't think the `maintainer_github` and `contributor_github` fields make sense anymore, but those can be stripped out once we've updated the Registry site build step to use the new Registry repo
   - My gut instinct is to use the user namespace to determine the main owner of the module, and then add a `contributors` string list to indicate which other users have contributed meaningfully to it. We can then add validation to make sure that every value in that list exists as another namespace in the repo

## What still needs to be migrated (in separate PRs)
These are the main files of interest that still probably need to be copied over from the `/modules` repo:
- `new.sh`
- `terraform_validate.sh`
- `update-version.sh`

They're probably going to require enough changes that it's worth handling them in a separate PR.
2025-04-17 09:49:54 -04:00
Michael Smith
7fd409fa73
chore: add CI step for validating contributor READMEs
Closes https://github.com/coder/internal/issues/530

## Changes made
- Created top-level test directories for Coder and NataInData (a developer who contributed a module for us in the past)
- Created Go script for validating the structure of each README, while being as granular as possible with any errors for better feedback
- Added CI step for running the script

## Notes
- I did a good bit of manual testing, but I am planning to circle back with a follow-up PR to add proper tests for the script functionality. I might push that off until after the majority of the new Registry work is done, though
- Not 100% sold on the structure of the Go directories. That's likely to change as I add more code for validating the modules and templates
2025-04-14 13:47:05 -04:00
Michael Smith
50d651c2f9 fix: update CI step 2025-04-14 13:57:02 +00:00
Michael Smith
a2c246ea06 refactor: split out error func 2025-04-14 13:52:40 +00:00
Michael Smith
39b264a7f9 refactor: split up package boundaries 2025-04-14 13:48:19 +00:00
Michael Smith
bdf9c5f51b refactor: update namespacing 2025-04-14 13:45:41 +00:00
Michael Smith
ffd9861e03 refactor: extract pseudo-constants 2025-04-14 13:37:17 +00:00
Michael Smith
5c45642e4b refactor: split off another function 2025-04-11 17:26:45 +00:00
Michael Smith
96fa5d4157 refactor: apply majority of feedback 2025-04-11 16:55:09 +00:00
Michael Smith
65fb7bcffb refactor: standardize how errors are defined 2025-04-11 13:44:15 +00:00
Michael Smith
affc5063ca refactor: split validation function into smaller pieces 2025-04-10 21:01:58 +00:00
Michael Smith
abf9815a84 fix: update static files 2025-04-10 20:40:54 +00:00
Michael Smith
bc4bbdaa07 fix: remove unnecessary matrix 2025-04-09 19:25:48 +00:00
Michael Smith
3b9c01ea6c fix: ensure relative avatars keep small scope 2025-04-09 16:07:58 +00:00
Michael Smith
e035f1fca3 chore: beef up CI 2025-04-09 15:26:22 +00:00
Michael Smith
88f7be27ec chore: set up initial version of CI 2025-04-09 15:01:08 +00:00
Michael Smith
3b9ec5ec41 chore: finish initial version of validation script 2025-04-08 21:23:36 +00:00
Michael Smith
9e48eb806f refactor: reorganize scripts again 2025-04-08 21:01:36 +00:00
Michael Smith
c3f998dbd9 refactor: rename script 2025-04-08 20:28:01 +00:00
Michael Smith
36ebd8d68b fix: update script to be runnable from root directory 2025-04-08 20:26:24 +00:00
Michael Smith
df2e47e51e refactor: remove unnecessary intermediary data types 2025-04-08 20:11:43 +00:00
Michael Smith
e20e679e08 wip: scaffold relative URL validation 2025-04-08 20:02:52 +00:00
Michael Smith
23f1cee640 fix: remove accidental segfault 2025-04-08 19:32:49 +00:00
Michael Smith
2b9da92259 refactor: remove goto statements 2025-04-08 19:28:33 +00:00
Michael Smith
629f4b3a65 chore: rename directory for script 2025-04-08 18:53:44 +00:00
Michael Smith
b19132140a fix: make logging better 2025-04-08 17:29:34 +00:00
Michael Smith
da735dafd6 fix: remove parsing bugs 2025-04-08 17:12:28 +00:00
Michael Smith
1906520b4a chore: add logs for better feedback 2025-04-08 16:31:25 +00:00