PlayKit JS Env Manager is a command line tool which aims to solve the development challenges for multiple packages (playkit-js-*) that integrates to a single application (Kaltura Player in our case).
First, install ttab globally on your machine:
$ [sudo] npm install ttab -g
Then, go to System Preferences > Security & Privacy, tab Privacy, select Accessibility, unlock, and make sure Terminal.app is in the list on the right and has a checkmark.
$ git clone https://github.com/kaltura/kaltura-player-js.git
$ cd kaltura-player-js
$ yarn
Pay attention that all playkit-js-* repos including kaltura-player-js repo must be under the same parent directory. An example for a valid folder structure is:
- repos
- playkit-js
- playkit-js-hls
- playkit-js-dash
- playkit-js-ima
- playkit-js-ui
- playkit-js-youbora
- playkit-js-providers
- playkit-js-kanalytics
- kaltura-player-js
scripts
the following commands:
"scripts": {
....
"playkit-dev:start": "playkit-dev start",
"playkit-dev:stop": "playkit-dev stop",
"playkit-rel": "playkit-rel start"
...
}
Those commands will helps us to run the required modes.
envManager
which contains the following configuration: "envManager": {
"devMode": {},
"releaseMode": []
}
$ cd PATH/TO/kaltura-player-js
and run one of:
yarn run playkit-rel
yarn run playkit-dev:start
yarn run playkit-dev:stop
Each repo has an alias to shorten its name and thus manipulate the configuration more easily and quickly:
"devMode": {
"alias": "version",
...
}
Property | Type | Possible Values | Description |
---|---|---|---|
version |
string |
'latest' ,'local' ,'vX.X.X' |
Specifies the package version that the corresponding repo will checkout to on the local machine. For ‘latest’ it will checkout to the master branch. For ‘local’ it will stay on the current local branch (whatever that is). |
"devMode": {
"core": "v0.10.0",
"ui": "latest",
"hls": "local"
}
"releaseMode": [
"alias1",
"alias2",
"alias3",
...
]
"releaseMode": [
"core",
"youbora",
"hls",
...
]
This tool has been tested only on Mac OS.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
We use SemVer for versioning. For the versions available, see the tags on this repository.
This project is licensed under the AGPL-3.0 License - see the LICENSE.md file for details