[YUNIKORN-1290] Support aarch64 and arm64 for ARM processors (#88)

The M1 MacBook does not identify as aarch64 but as arm64. Both aarch64
and arm64 are the same and are supported as such.

Closes: #88

Signed-off-by: Wilfred Spiegelenburg <wilfreds@apache.org>
(cherry picked from commit c8f6d0476eb82f05cdff2508a6dd9927c60bff44)
1 file changed
tree: 0457da8e4c580352c63788dfdcea4a37c501ae73
  1. .github/
  2. nginx/
  3. src/
  4. .asf.yaml
  5. .browserslistrc
  6. .dockerignore
  7. .editorconfig
  8. .gitignore
  9. .nvmrc
  10. .prettierrc
  11. angular.json
  12. Dockerfile
  13. json-db.json
  14. json-routes.json
  15. json-server.json
  16. karma.conf.ci.js
  17. karma.conf.js
  19. Makefile
  20. NOTICE
  21. package.json
  22. README.md
  23. tsconfig.app.json
  24. tsconfig.json
  25. tsconfig.spec.json
  26. yarn.lock

Yunikorn web UI

YuniKorn web provides a web interface on top of the scheduler. It provides insight in the current and historic scheduler status. It depends on yunikorn-core which encapsulates all the actual scheduling logic.

For detailed information on the components and how to build the overall scheduler please see the yunikorn-core.

This project was generated with Angular CLI version 13.3.0.

Development Environment setup


The project requires a number of external tools to be installed before the build and development:

Development server

Run make start-dev for a development server. Navigate to http://localhost:4200/. The application will automatically reload if you change any of the source files.


Run make build to build the project. The build artifacts will be stored in the dist/ directory. Use make build-prod for a production build. Production builds will add the --prod flag to the angular build.

Docker image build

Image builds are geared towards a production build and will always build with the --prod flag set.

Run make image to build the docker image apache/yunikorn:web-latest. Run make run to build the image and deploy the container from the docker image apache/yunikorn:web-latest.

You can set REGISTRY and VERSION in the commandline to build docker image with a specified version and registry. For example,

make image REGISTRY=apache VERSION=latest

This command will build binary with version web-latest and the docker full image tag is apache/yunikorn:web-latest.

Run make deploy-prod to build and deploy the scheduler webapp using docker-compose. The project uses multi-stage build feature of the docker and requires Docker 17.05 or higher.

Running tests

All tests can be executed via make test. It will first build the project and then execute the unit tests followed by the end to end tests.
If you want to run the unit tests separately, run yarn test to execute them via Karma. If you want to run the unit tests with code coverage, run yarn test:coverage.

Local development

Beside the simple all in way to start the development server via make you can also start a development environment manually.

The application depends on json-server for data. Install json-server locally. Run yarn start:srv to start json-server for local development. Run yarn start to start the angular development server and navigate to http://localhost:4200/.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

Code scaffolding

Run ng generate component component-name to generate a new component.

You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Port configurations

The default port used for the web server is port 9889 and is set in the nginx/nginx.conf.

The port is also referenced in other scripts and configurations to this port also, if you change the port make sure that the other locations are updated:

  • Makefile

How do I contribute code?

See how to contribute code from this guide.