name: Install and validate the package description: Install and validate the package inputs: pkg-folder: description: Define folder with packages required: true pkg-name: description: Package name to import required: true pkg-extra: description: argument for install extra required: false default: "" pip-flags: description: Additional pip install flags required: false default: "" runs: using: "composite" steps: - name: Choose package import working-directory: ${{ inputs.pkg-folder }} run: | import os, glob lut = {'app': 'lightning_app', 'fabric': 'lightning_fabric', 'pytorch': 'pytorch_lightning'} act_pkg = lut.get('${{inputs.pkg-name}}', 'lightning') pkg_sdist = glob.glob('*.tar.gz')[0] pkg_wheel = glob.glob('*.whl')[0] extra = '${{inputs.pkg-extra}}' extra = f'[{extra}]' if extra else '' envs = [f'PKG_IMPORT={act_pkg}', f'PKG_SOURCE={pkg_sdist}', f'PKG_WHEEL={pkg_wheel}', f'PKG_EXTRA={extra}'] with open(os.getenv('GITHUB_ENV'), "a") as gh_env: gh_env.write(os.linesep.join(envs)) shell: python - name: Install package - wheel working-directory: ${{ inputs.pkg-folder }} run: | pip install "${PKG_WHEEL}${PKG_EXTRA}" ${{ inputs.pip-flags }} pip list | grep lightning python -c "import ${{ env.PKG_IMPORT }}; print(${{ env.PKG_IMPORT }}.__version__)" shell: bash - name: Install package - archive working-directory: ${{ inputs.pkg-folder }} run: | pip install "${PKG_SOURCE}${PKG_EXTRA}" ${{ inputs.pip-flags }} pip list | grep lightning python -c "import ${{ env.PKG_IMPORT }}; print(${{ env.PKG_IMPORT }}.__version__)" shell: bash