Is it possible to use non base editor image?
lvgrecords opened this issue ยท 7 comments
I'm trying to use unityci/editor:2020.1.17f1-ios-0.7.0 but getting an error below:
Run webbertakken/unity-request-manual-activation-file@v2.0-alpha-1
/usr/bin/docker build /home/lvg/actions-runner/_work/_actions/webbertakken/unity-request-manual-activation-file/v2.0-alpha-1/action --file /home/lvg/actions-runner/_work/_actions/webbertakken/unity-request-manual-activation-file/v2.0-alpha-1/action/Dockerfile --build-arg IMAGE=unityci/editor:2020.1.17f1-ios-0.7.0-base-0 --tag unity-action:2020.1.17f1-ios-0.7.0-base-0
Sending build context to Docker daemon 133.1kB
Step 1/12 : ARG IMAGE
Step 2/12 : FROM $IMAGE
manifest for unityci/editor:2020.1.17f1-ios-0.7.0-base-0 not found: manifest unknown: manifest unknown
Error: The process '/usr/bin/docker' failed with exit code 1
My workflow:
name: Continuous Integration
on:
pull_request: { }
push: { branches: [ master ] }
env:
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
UNITY_VERSION: 2020.1.17f1-ios-0.7.0
jobs:
activation:
name: Request manual activation file ๐
# runs-on: ubuntu-20.04
runs-on: self-hosted
if: false #enable this job to request a manual unity license
steps:
- name: cleanup #https://github.com/actions/checkout/issues/211
run: |
sudo chown -R $USER:$USER $GITHUB_WORKSPACE
- name: Checkout repository
uses: actions/checkout@v2
- name: Request manual activation file
uses: webbertakken/unity-request-manual-activation-file@v2.0-alpha-1
id: getManualLicenseFile
with:
unityVersion: ${{ env.UNITY_VERSION }}
# This will produce a Unity_xxx.alf file
# download it in your computer and upload it to
# https://license.unity3d.com/manual
# That will produce a Unity_xxx.ulf file
# add the contents of Unity_xxx.ulf file to your repository's secrets
# as UNITY_LICENSE
# then disable this job
Looks -base-0 is added on runtime. Are there ability to use editor+modules based docker images eg unityci/editor:2020.1.17f1-ios-0.7.0?
In case it's not supported at that moment I do not mind to add such support myself by PR
This is because you're specifying an editor image tag as the unity version, which is incorrect usage of the unityVersion parameter.
-base is added because licenses do not care about the target platform, so the most light weight image is chosen. Recommend first reading the readme at https://game.ci/docs.
@webbertakken thanks for the reply.
I've read docs before creating a ticket and did not found it. Anyway it looks not obvious to use base version in case exact one is specified. It would be useful either allow use exact version or specify it on docs.
Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.
I was sure that this feature is not supported in general for game.ci actions due unity-test-runner has exactly the same issue and I can't use iOS based image to run my tests.
Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?
Hi @lvgrecords
Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.
gableroux/unity3d docker images are being deprecated and will be replaced by game-ci/docker. Right now, it's still in alpha, but we solved the activation issue you just mentioned by hardocding the new docker image's machine id (and also we fixed many other problems). So your single license will work across all images with different components.
More details about docker images here:
https://game.ci/docs/game-ci/docker-images
I've read docs before creating a ticket and did not found it. Anyway it looks not obvious to use base version in case exact one is specified. It would be useful either allow use exact version or specify it on docs.
Unity Actions try to exactly abstract over that and keep things simple. All you should care about when filling out your unityVersion, is the Unity version.
Most probably I'm wrong but sharing same licence across different gableroux docker images for same unity version did not work for me ~8-10month ago. I'll recheck it.
This is one of the reasons to move to new images. We fixed that issue with these newer images that are used in unity actions >= v2.
I was sure that this feature is not supported in general for game.ci actions due unity-test-runner has exactly the same issue and I can't use iOS based image to run my tests.
Not sure which issue you're talking about when you say you can't use iOS images, but you should be able to build for iOS (just not IL2CPP). Please make sure you're using version 2 of the unity actions.
Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?
Yes if there is no issue related to the problem you are facing feel free to create one for it.
All you should care about when filling out your unityVersion, is the Unity version.
And we're even making this easier, v2 will auto detect your unity version based on ProjectSettings/ProjectVersion.txt, so no need to specify it at all ๐
Unfortunately using it's a required workaround for googlesamples/unity-jar-resolver#412
@webbertakken should I open a similar ticket for unity-test-runner repository?Yes if there is no issue related to the problem you are facing feel free to create one for it.
created a new one
Example implementation in test runner https://github.com/game-ci/unity-test-runner/pull/84/files