rusackas commented on code in PR #29382:
URL: https://github.com/apache/superset/pull/29382#discussion_r1857130300
##########
docs/docs/contributing/development.mdx:
##########
@@ -502,39 +502,117 @@ If using the eslint extension with vscode, put the
following in your workspace `
]
```
-## Testing
-### Python Testing
+## GitHub Actions and `act`
+
+:::tip
+`act` compatibility of Superset's GHAs is not fully tested. Running `act`
locally may or may not
+work for different actions, and may require fine tuning and local
secret-handling.
+For those more intricate GHAs that are tricky to run locally, we recommend
iterating
+directly on GHA's infrastructure, by pushing directly on a branch and
monitoring GHA logs.
+For more targetted iteration, see the `gh workflow run --ref {BRANCH}`
subcommand of the GitHub CLI.
+:::
+
+For automation and CI/CD, Superset makes extensive use of GitHub Actions
(GHA). You
+can find all of the workflows and other assets under the `.github/` folder.
This includes:
+- running the backend unit test suites (`tests/`)
+- running the frontend test suites (`superset-frontend/src/**.*.test.*`)
+- running our Cypress end-to-end tests (`superset-frontend/cypress-base/`)
+- linting the codebase, including all Python, Typescript and Javascript, yaml
and beyond
+- checking for all sorts of other rules conventions
+
+When you open a pull request (PR), the appropriate GitHub Actions (GHA)
workflows will
+automatically run depending on the changes in your branch. It's perfectly
reasonable
+(and required!) to rely on this automation. However, the downside is that it's
mostly an
+all-or-nothing approach and doesn't provide much control to target specific
tests or
+iterate quickly.
+
+At times, it may be more convenient to run GHA workflows locally. For that
purpose
+we use [act](https://github.com/nektos/act), a tool that allows you to run
GitHub Actions (GHA)
+workflows locally. It simulates the GitHub Actions environment, enabling
developers to
+test and debug workflows on their local machines before pushing changes to the
repository. More
+on how to use it in the next section.
+
+:::note
+In both GHA and `act`, we can run a more complex matrix for our tests,
executing against different
+database engines (PostgreSQL, MySQL, SQLite) and different versions of Python.
+This enables us to ensure compatibility and stability across various
environments.
+:::
-All python tests are carried out in
[tox](https://tox.readthedocs.io/en/latest/index.html)
-a standardized testing framework.
-All python tests can be run with any of the tox
[environments](https://tox.readthedocs.io/en/latest/example/basic.html#a-simple-tox-ini-default-environments),
via,
+### Lower-Level Control
+
+Note that for all GHAs, it's also possible to go lower level and the content
of any workflow
Review Comment:
I'm not sure I understand this sentence.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]