Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

[fingerprint] - App detection #2615

Closed
weikanglim opened this issue Aug 8, 2023 · 1 comment · Fixed by #2647
Closed

[fingerprint] - App detection #2615

weikanglim opened this issue Aug 8, 2023 · 1 comment · Fixed by #2647
Assignees
Labels

Comments

@weikanglim
Copy link
Contributor

Part of #705

Application detection package

Application detection that scans the filesystem for application projects linkable to azure.yaml. Application detection also collects useful additional metadata about services for infra generation.

Description:

  1. Detection involves scanning the filesystem for well-known file names/types (requirements.txt, pom.xml, *.*proj).
  2. In some cases, we would read build-tooling project metadata to get more precise detection.
    1. In general, we should prefer accuracy over performance. If reading *.csproj provides a better accurate detection than inferring from other means, we should do it.
  3. When walking directories, we apply heuristics such as: avoiding hidden directories, well-known directories like (eng, tools) to avoid picking up tooling that aren't production applications.
  4. Application detection generates additional metadata about services for infra generation.

The per-directory detection logic is currently intentionally simple and isn't as complete as something that Oryx provides. In the future,, the per-directory detection logic will leverage the common library Oryx provides.

@weikanglim weikanglim self-assigned this Aug 8, 2023
@weikanglim weikanglim added this to the September 2023 - 1.3.0 milestone Aug 8, 2023
@weikanglim
Copy link
Contributor Author

WIP is here: #2457. Remainder work is to clean up for production, reviewed and delivered.

weikanglim added a commit that referenced this issue Aug 28, 2023
Add `appdetect`, a package that detects application projects on the filesystem by scanning files and applying heuristics. This involves only static analysis of files. 

This will be used to analyze emitted metadata about the projects to feed `azure.yaml` and infra generation.

Closes #2615
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant