Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 32 additions & 79 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,80 +1,33 @@
---
name: Deployment
on:
workflow_dispatch:
inputs:
env:
description: "Deploy to (dev|prod|dev prod)"
required: true
type: string
default: "dev"
clean:
description: "Clean cache"
required: true
type: boolean
default: false
cleanDiskSpace:
description: "Cleans up unncessary tools"
required: true
type: boolean
default: true
excludeSubfolder:
description: "Exclude a subfolder from deletion"
required: false
type: string
default: ""
index-mode:
description: 'Type of indexing. "index" to push to Algolia, "console" for dry run.'
required: true
default: "index"
type: choice
options:
- console
- index
jobs:
deployment:
name: Deployment
uses: AdobeDocs/adp-devsite-workflow/.github/workflows/gatsby-deploy.yml@main
secrets: inherit
with:
env: ${{ inputs.env }}
clean: ${{ inputs.clean }}
clean-disk-space: ${{ inputs.cleanDiskSpace }}
excludeSubfolder: ${{ inputs.excludeSubfolder }}
index-mode: ${{ inputs.index-mode }}
NODE_OPTIONS: "--max_old_space_size=7000"
IMS_BASE_URL_STAGE: "https://ims-na1-stg1.adobelogin.com"
FFC_BASE_URL_STAGE: "https://ffc-addon-stage.adobe.io/"
GATSBY_EXPRESS_URL_STAGE: "https://stage.projectx.corp.adobe.com/new"
IMS_BASE_URL_PROD: "https://ims-na1.adobelogin.com"
FFC_BASE_URL_PROD: "https://ffc-addon.adobe.io/"
GATSBY_EXPRESS_URL_PROD: "https://express.adobe.com/new"

upload-playground-samples:
name: Upload Playground Samples
needs: deployment
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node v20 for Yarn v3
uses: actions/setup-node@v3
with:
node-version: "20.19.5" # Current LTS version

- name: Enable Corepack for Yarn v3
run: corepack enable

- name: Install Dependencies
run: yarn install

- name: Upload playground samples
run: node upload-playground-samples.mjs
env:
IMS_BASE_URL: ${{ inputs.env == 'prod' && 'https://ims-na1.adobelogin.com' || 'https://ims-na1-stg1.adobelogin.com' }}
FFC_BASE_URL: ${{ inputs.env == 'prod' && 'https://ffc-addon.adobe.io/' || 'https://ffc-addon-stage.adobe.io/' }}
PLAYGROUND_CLIENT_ID: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_CLIENT_ID || secrets.PLAYGROUND_CLIENT_ID_STAGE }}
PLAYGROUND_CLIENT_SECRET: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_CLIENT_SECRET || secrets.PLAYGROUND_CLIENT_SECRET_STAGE }}
PLAYGROUND_AUTH_CODE: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_AUTH_CODE || secrets.PLAYGROUND_AUTH_CODE_STAGE }}
PLAYGROUND_API_KEY: ${{ secrets.PLAYGROUND_API_KEY }}
name: Deployment
on:
push:
branches:
- main
workflow_dispatch:
inputs:
env:
description: "Select environment to deploy to"
type: choice
required: true
default: "prod"
options:
- "prod"
- "stage & prod"
baseSha:
description: "Use base SHA commit to deploy from (empty string defaults to last commit before HEAD)"
type: string
required: false
default: ""
deployAll:
description: "Force deploy all files"
type: boolean
default: false
jobs:
deployment:
name: Deployment
uses: AdobeDocs/adp-devsite-workflow/.github/workflows/deploy.yml@main
with:
env: ${{ inputs.env || 'prod' }}
baseSha: ${{ inputs.baseSha || '' }}
deployAll: ${{ inputs.deployAll || true }}
17 changes: 17 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
name: Lint
on:
pull_request:
branches: [main]
paths:
- 'src/pages/**'

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Lint
run: npx --yes github:AdobeDocs/adp-devsite-utils runLint -v
23 changes: 23 additions & 0 deletions .github/workflows/stage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
name: Staging
on:
workflow_dispatch:
inputs:
baseSha:
description: "Use base SHA commit to deploy from (empty string defaults to last commit before HEAD)"
type: string
required: false
default: ""
deployAll:
description: "Force deploy all files"
type: boolean
default: false
jobs:
deployment:
name: Deployment
uses: AdobeDocs/adp-devsite-workflow/.github/workflows/deploy.yml@main
with:
env: stage
baseSha: ${{ inputs.baseSha }}
deployAll: ${{ inputs.deployAll }}

89 changes: 0 additions & 89 deletions .github/workflows/test-pull-request.yml

This file was deleted.

65 changes: 28 additions & 37 deletions .github/workflows/upload-playground-samples.yml
Original file line number Diff line number Diff line change
@@ -1,42 +1,33 @@
---
name: Manual Upload Playground Samples
name: Upload playground samples

on:
push:
branches: [main]
workflow_dispatch:
inputs:
env:
description: "Deploy to (dev|prod)"
required: true
type: choice
options:
- dev
- prod
default: "dev"
jobs:
upload-playground-samples:
name: Upload Playground Samples
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node v20 for Yarn v3
uses: actions/setup-node@v3
with:
node-version: "20.19.5" # Current LTS version

- name: Enable Corepack for Yarn v3
run: corepack enable

- name: Install Dependencies
run: yarn install

- name: Upload playground samples
run: node upload-playground-samples.mjs
env:
IMS_BASE_URL: ${{ inputs.env == 'prod' && 'https://ims-na1.adobelogin.com' || 'https://ims-na1-stg1.adobelogin.com' }}
FFC_BASE_URL: ${{ inputs.env == 'prod' && 'https://ffc-addon.adobe.io/' || 'https://ffc-addon-stage.adobe.io/' }}
PLAYGROUND_CLIENT_ID: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_CLIENT_ID || secrets.PLAYGROUND_CLIENT_ID_STAGE }}
PLAYGROUND_CLIENT_SECRET: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_CLIENT_SECRET || secrets.PLAYGROUND_CLIENT_SECRET_STAGE }}
PLAYGROUND_AUTH_CODE: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_AUTH_CODE || secrets.PLAYGROUND_AUTH_CODE_STAGE }}
PLAYGROUND_API_KEY: ${{ inputs.env == 'prod' && secrets.PLAYGROUND_API_KEY || secrets.PLAYGROUND_API_KEY_STAGE }}
target_branch:
description: "Target branch to send PR to (e.g., main, stage, etc)"
type: string
required: false
default: "main"
folder_path:
description: "Folder path to read files from (defaults to src/pages)"
type: string
required: false
default: "src/pages"

jobs:
upload-playground:
name: Upload playground samples
uses: AdobeDocs/adp-devsite-workflow/.github/workflows/upload-playground.yml@main
with:
TARGET_BRANCH: ${{ inputs.target_branch || 'main' }}
FOLDER_PATH: ${{ inputs.folder_path || 'src/pages' }}
secrets:
FFC_BASE_URL: ${{ secrets.FFC_BASE_URL }}
IMS_BASE_URL: ${{ secrets.IMS_BASE_URL }}
PLAYGROUND_API_KEY: ${{ secrets.PLAYGROUND_API_KEY }}
PLAYGROUND_AUTH_CODE: ${{ secrets.PLAYGROUND_AUTH_CODE }}
PLAYGROUND_CLIENT_ID: ${{ secrets.PLAYGROUND_CLIENT_ID }}
PLAYGROUND_CLIENT_SECRET: ${{ secrets.PLAYGROUND_CLIENT_SECRET }}
39 changes: 39 additions & 0 deletions dev.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
// content/docs
// serve static on 3001

import express from 'express';
import fs from 'fs';
import path from 'path';
import { fileURLToPath } from 'url';
import { execSync } from 'child_process';

const __dirname = path.dirname(fileURLToPath(import.meta.url));

const PORT = process.env.DEV_PORT || 3003;

const getCurrentBranch = () => {
try {
return execSync('git branch --show-current', { encoding: 'utf8' }).trim();
} catch (error) {
console.warn('Could not determine git branch, defaulting to "main"');
return 'main';
}
};

const currentBranch = getCurrentBranch();
const DOCS_DIRECTORY = process.env.DIRECTORY || './src/pages';

const app = express();
console.log(path.resolve(__dirname, `./${DOCS_DIRECTORY}`));
app.use(
express.static(path.resolve(__dirname, `./${DOCS_DIRECTORY}`), {
setHeaders: (res) => {
res.setHeader('last-modified', new Date().toGMTString());
res.setHeader('local-branch-name', currentBranch);
},
}),
);

app.listen(PORT, () => {
console.debug(`Docs dev server is running on port ${PORT}`);
});
Loading
Loading