IdleKit NPM Registry
This guide helps to set up our NPM registry. Before you read this guide you should:
- Have NPM installed in your environment
- Have a user account within our NPM registry with access
- Be sure that your project or Unity version can use the Unity Package Manager
NPM access
To access the ESG NPM packages, you need the .upmconfig.toml
file in your base user directory - C:\Users\{username}\.upmconfig.toml
on Windows, and /Users/{username}/.upmconfig.toml
on Mac. This file will be provided to you by a solutions engineer, reach out in your shared channel if you didn't already get a copy.
Manifest file
To make sure the package you want to manage using the Package Manager works, you need to modify the dependencies
with the package name and the version to be used and update the scopedRegistries
with the information on where this package is hosted.
Info
Our package name structure looks like this com.{scope-name}.{package-name}
Here is how your manifest.json
will look like after updating it:
{
"dependencies": {
"com.{scope-name}.{package-name}": "1.0.0",
...
},
"scopedRegistries": [
{
"name": "eastsidegames",
"url": "https://idlekit-nexus-dev.eastsidegames.com/repository/{repository-name}", //the Host URL of the registry
"scopes": [
"com.{scope-name}"
]
}
]
}
Repository name will generally be unity-all
unless stated otherwise.
Unity Package Manager
Now that you have the credentials and the information needed for downloading the package on your manifest.json
, open your unity (if you have it opened already, make sure to restart it), and then open the Package Manager. If everything is right, you should see the package you specified, like the one here:
If what you see is something similar to the image above, that means it's all set up.
NPM Access for Unity Cloud Build
To access our NPM server in Unity Cloud Build, follow these steps: 1. Create a bash script and place it somewhere in your unity project (e.g. Assets/CloudBuilds/Scripts/pre-build.sh
) with the following content:
#!/bin/bash
echo "[YOUR_UPM_SERVICE_ADDRESS]" >> ~/.upmconfig.toml
echo "token = '$NPM_TOKEN'" >> ~/.upmconfig.toml
echo "email = '$NPM_TOKEN_EMAIL'" >> ~/.upmconfig.toml
echo "alwaysAuth = true" >> ~/.upmconfig.toml
NPM TOKEN
with the token from your .upmconfig.toml
file. NPM_TOKEN_EMAIL
this email will be {your studio name all lowercase}@eastsidegamestudio.com If you are using a build server other than Unity Cloud Build, reach out in your shared slack channel and we will work out another solution.