mirror of
https://github.com/ansible/awx.git
synced 2026-01-15 03:40:42 -03:30
Add support Prompt on Launch for Workflow Job Template see: https://github.com/ansible/awx/issues/5819
AWX-PF
Requirements
- node 10.x LTS, npm 6.x LTS, make, git
Development
The API development server will need to be running. See CONTRIBUTING.md.
# Start the ui development server. While running, the ui will be reachable
# at https://127.0.01:3001 and updated automatically when code changes.
npm --prefix=awx/ui_next start
Using an External Server
If you normally run awx on an external host/server (in this example, awx.local),
you'll need to update your django settings and use the TARGET_HOST and TARGET_PORT environment variables:
echo "CSRF_TRUSTED_ORIGINS = ['awx.local:8043']" >> /awx/settings/development.py
TARGET_HOST='awx.local:8043' TARGET_PORT=8043 npm --prefix awx/ui_next start
Note: When using an external server, you must also manually update the proxy field in package.json
to point to the new websocket url.
Testing
# run code formatting check
npm --prefix awx/ui_next run prettier-check
# run lint checks
npm --prefix awx/ui_next run lint
# run all unit tests
npm --prefix awx/ui_next run test
# run a single test (in this case the login page test):
npm --prefix awx/ui_next test -- src/screens/Login/Login.test.jsx
# start the test watcher and run tests on files that you've changed
npm --prefix awx/ui_next run test-watch
Note:
- Once the test watcher is up and running you can hit
ato run all the tests. - All commands are run on your host machine and not in the api development containers.
Adding Dependencies
# add an exact development or build dependency
npm --prefix awx/ui_next install --save-dev --save-exact dev-package@1.2.3
# add an exact production dependency
npm --prefix awx/ui_next install --save --save-exact prod-package@1.23
# add the updated package.json and package-lock.json files to scm
git add awx/ui_next_next/package.json awx/ui_next_next/package-lock.json
Removing Dependencies
# remove a development or build dependency
npm --prefix awx/ui_next uninstall --save-dev dev-package
# remove a production dependency
npm --prefix awx/ui_next uninstall --save prod-package
Building for Production
# built files are placed in awx/ui_next/build
npm --prefix awx/ui_next run build
CI Container
To run:
cd awx/awx/ui_next
docker build -t awx-ui-next .
docker run --name tools_ui_next_1 --network tools_default --link 'tools_awx_1:awx' -e TARGET_HOST=awx -p '3001:3001' --rm -v $(pwd)/src:/ui_next/src awx-ui-next
Note: This is for CI, test systems, zuul, etc. For local development, see usage