Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

feat(devx): Developer.md discovery system #81

Draft
wants to merge 8 commits into
base: feat/devx
Choose a base branch
from

Conversation

apskhem
Copy link
Contributor

@apskhem apskhem commented Oct 21, 2024

This feature makes devx to discover all Developer.md files with a project.

@apskhem apskhem added the enhancement New feature or request label Oct 21, 2024
@apskhem apskhem self-assigned this Oct 21, 2024
@jmgilman
Copy link
Collaborator

jmgilman commented Oct 21, 2024

So, for this feature, you'll want to tie into the existing project discovery mechanism.

  • Project's are defined here
    • Notice how project's already define an Earthfile field (set to a pointer since it's optional)
  • The project loader is responsible for loading projects
    • All you need is the root path to the project
    • As an example, this is where the loader checks for and optionally parses an Earthfile
  • There is also a project scanner in the CLI code

Those should be the components you need for the devx command. Bear in mind that a lot of this logic already has unit tests. So you'll need to modify them with any logic you add. This necessarily means you'll need to make sure you keep the existing code testable. If you have any questions about that, let me know.

What I would propose is:

  1. Add logic to check for and parse a developer.md in the project loader
  2. Modify the devx command to use the project scanner for finding all projects
  3. Once you have a list of projects, you can filter it down to list only projects that had a developer.md file

@apskhem apskhem marked this pull request as draft October 21, 2024 16:15
@apskhem apskhem linked an issue Oct 22, 2024 that may be closed by this pull request
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement markdown files discovery within the working repository
2 participants