aboutsummaryrefslogtreecommitdiff
path: root/action.yml
blob: 1fa557f1fa9f9542ca77aa5f8586bbdc89f85655 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
name: "Publish org-roam to GitHub Pages"

inputs:
  org-roam-db-filename:
    description: "org-roam db filename"
    required: true
  deploy-to-pages:
    description: "Deploy to GitHub Pages"
    required: false
    default: false

runs:
  using: "composite"
  steps:
    - name: Checkout this repo
      uses: actions/checkout@v4
      with:
        repository: ikoamu/org-roam-ui-hosting
        path: action
    - name: Checkout org file repo
      uses: actions/checkout@v4
      with:
        repository: ${{ github.repository }}
        path: orgs
    - name: Checkout org-roam-ui
      uses: actions/checkout@v4
      with:
        repository: ikoamu/org-roam-ui
        ref: feature/add-export-functionality
        path: ui

    - name: Setup Node
      uses: actions/setup-node@v3
      with:
        node-version: "20.x"

    # create graphdata.json and notes
    - name: Install graphdata generator dependencies
      working-directory: action
      run: npm install
      shell: bash
    - name: Generate graphdata.json
      working-directory: action
      run: npm run generate --script_params='../org/${{ inputs.org-roam-db-filename }}'
      shell: bash
    - name: Create Notes
      working-directory: action
      run: ./create_notes.sh ../orgs
      shell: bash

    # build org-roam-ui
    - name: Install org-roam-ui dependencies
      working-directory: ui
      run: yarn install
      shell: bash
    - name: Build org-roam-ui
      working-directory: ui/standalone
      run: ./build-standalone-server.sh ../../action/
      shell: bash
    - name: Add nojekyll
      working-directory: ui
      run: touch ./standalone/out/.nojekyll
      shell: bash

    - name: Upload artifact
      uses: actions/upload-pages-artifact@v2
      with:
        path: "./ui/standalone/out"

    - name: Deploy to GitHub Pages
      if: ${{ inputs.deploy-to-pages == 'true' }}
      id: deployment
      uses: actions/deploy-pages@v2