[UI] Hide workspace actions for non-permitted users #23
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Test Sistent with Meshery UI | |
| on: | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| paths-ignore: | |
| - 'system/**/*' | |
| - '*.md' | |
| jobs: | |
| test-with-meshery-ui: | |
| name: Integration Test with Meshery UI | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout Sistent PR | |
| uses: actions/checkout@v6 | |
| with: | |
| path: sistent | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| cache-dependency-path: sistent/package-lock.json | |
| - name: Install Sistent Dependencies | |
| working-directory: sistent | |
| run: npm install | |
| - name: Build Sistent | |
| working-directory: sistent | |
| run: npm run build | |
| - name: Pack Sistent for Installation | |
| working-directory: sistent | |
| run: | | |
| npm pack | |
| SISTENT_PACKAGE=$(ls sistent-sistent-*.tgz 2>/dev/null | \ | |
| head -n 1) | |
| if [ -z "$SISTENT_PACKAGE" ]; then | |
| echo "Error: No Sistent package found" | |
| exit 1 | |
| fi | |
| echo "SISTENT_PACKAGE=$SISTENT_PACKAGE" >> $GITHUB_ENV | |
| echo "Created package: $SISTENT_PACKAGE" | |
| - name: Checkout Meshery UI | |
| uses: actions/checkout@v6 | |
| with: | |
| repository: meshery/meshery | |
| path: meshery | |
| fetch-depth: 1 | |
| - name: Install Meshery UI Dependencies | |
| working-directory: meshery/ui | |
| run: npm install | |
| - name: Install Sistent from PR | |
| working-directory: meshery/ui | |
| run: npm install ../../sistent/${{ env.SISTENT_PACKAGE }} | |
| - name: Build Meshery UI | |
| working-directory: meshery/ui | |
| run: | | |
| npm run build | |
| continue-on-error: false | |
| - name: Run Meshery UI Tests | |
| working-directory: meshery/ui | |
| run: | | |
| if grep -qE '"test"\s*:' package.json; then | |
| npm run test -- --passWithNoTests | |
| else | |
| echo "No tests found in Meshery UI, skipping test step" | |
| fi | |
| continue-on-error: false | |
| - name: Integration Test Summary | |
| if: always() | |
| run: | | |
| { | |
| echo "## Integration Test Results" | |
| echo "" | |
| if [ "${{ job.status }}" == "success" ]; then | |
| echo "✅ Sistent changes were successfully tested" | |
| echo " against Meshery UI" | |
| else | |
| echo "❌ Integration test failed" | |
| fi | |
| echo "" | |
| echo "### Details" | |
| echo "- **Sistent Package**: ${{ env.SISTENT_PACKAGE }}" | |
| if [ "${{ job.status }}" == "success" ]; then | |
| echo "- **Meshery UI Build**: ✅ Successful" | |
| else | |
| echo "- **Meshery UI Build**: ❌ Failed" | |
| fi | |
| echo "- **Node Version**: 20" | |
| } >> $GITHUB_STEP_SUMMARY |