# Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. # See LICENSE.txt for license information. name: Setup Intune description: Initialize Intune submodule and link module for internal builds with MAM features inputs: ssh-private-key: description: 'SSH private key for Intune submodule repository access' required: true runs: using: composite steps: - name: Configure SSH for Intune submodule uses: ./.github/actions/setup-intune-ssh-key with: ssh-private-key: ${{ inputs.ssh-private-key }} - name: Initialize Intune submodule shell: bash env: GIT_SSH_COMMAND: ssh -i $HOME/.ssh/intune_submodule_ed25519 -o IdentitiesOnly=yes -o StrictHostKeyChecking=no run: | echo "::group::Initialize Intune submodule" # Check if submodule is already initialized if [ -e "libraries/@mattermost/intune/.git" ]; then echo "â„šī¸ Intune submodule already initialized, updating..." git submodule update --remote libraries/@mattermost/intune else echo "đŸ“Ĩ Initializing Intune submodule..." git submodule update --init --recursive libraries/@mattermost/intune fi # Display submodule info cd libraries/@mattermost/intune echo "đŸ“Ļ Intune submodule initialized:" echo " Branch: $(git rev-parse --abbrev-ref HEAD)" echo " Commit: $(git rev-parse --short HEAD)" echo " Remote: $(git remote get-url origin)" cd ../.. echo "✅ Intune submodule ready" echo "::endgroup::" - name: Link Intune module to node_modules shell: bash run: | echo "::group::Link Intune module" # Install the module without saving to package.json npm install --install-links --no-save ./libraries/@mattermost/intune # Verify symlink was created if [ -L "node_modules/@mattermost/intune" ] || [ -d "node_modules/@mattermost/intune" ]; then echo "✅ Intune module linked to node_modules/@mattermost/intune" else echo "❌ Failed to link Intune module" exit 1 fi echo "::endgroup::"