-
-
Save umanghome/30527c68cd605dfef8702a832ff14fd5 to your computer and use it in GitHub Desktop.
# .github/workflows/publish.yml | |
name: Generate a build and push to another branch | |
on: | |
push: | |
branches: | |
- master # Remove this line if your primary branch is "main" | |
- main # Remove this line if your primary branch is "master" | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
name: Build and Push | |
steps: | |
- name: git-checkout | |
uses: actions/checkout@v2 | |
- name: Install all dependencies | |
run: npm install | |
- name: Build | |
run: npm run build # The build command of your project | |
- name: Push | |
uses: s0/git-publish-subdir-action@develop | |
env: | |
REPO: self | |
BRANCH: build # The branch name where you want to push the assets | |
FOLDER: build # The directory where your assets are generated | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # GitHub will automatically add this - you don't need to bother getting a token | |
MESSAGE: "Build: ({sha}) {msg}" # The commit message |
This is replacing all the files in the target branch. Is there any way to add new files to existing folder in target branch?
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x]
steps:
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: yarn install
@SivasakthiMTR did you find any solution?
This is replacing all the files in the target branch. Is there any way to add new files to existing folder in target branch?
https://github.com/s0/git-publish-subdir-action
It says:
By default, this action will clear the target branch of any pre-existing files, and only keep those that are defined in the target FOLDER when the action was run.
@catalinux @SivasakthiMTR Does CLEAR_GLOBS_FILE
not work?
That's really helpful, thanks
@micaelomota No need to write all that, just
- uses: actions/setup-node@v3
with:
node-version: '18.x'
First of all, thanks! Can I specify the directory that I would like to build? Becase I have a frontend and backend separated directory in same repository.
@rkorom Yes, you can add a step that contains a cd
command. Let me know if that doesn't work or if you still need help.
First of all, thanks! Can I specify the directory that I would like to build? Becase I have a frontend and backend separated directory in same repository.
You can specify the default directory after the build name and before the steps, for the coming steps by doing so:
Imagining that the build folder is inside a folder named "client"
defaults:
run:
working-directory: ./client
keep in mind that but doing this you need to specify the FOLDER param on s0/git-publish-subdir-action@develop
to ./client/build
instead of just build
I'm getting this error:
remote: Write access to repository not granted.
fatal: unable to access 'https://github.com/<repo>.git/': The requested URL returned error: 403
Error: Process exited with code: 128:
remote: Write access to repository not granted.
fatal: unable to access 'https://github.com/<repo>.git/': The requested URL returned error: 403
at ChildProcess.<anonymous> (/home/runner/work/_actions/s0/git-publish-subdir-action/develop/action/dist/index.js:11966:20)
at ChildProcess.emit (node:events:513:[28](https://github.com/<repo>/actions/runs/7593337563/job/20683765413#step:5:29))
at maybeClose (node:internal/child_process:1100:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:[30](https://github.com/<repo>/actions/runs/7593337563/job/20683765413#step:5:31)4:5)
<repo>
is my repository's path ("org/repo").
how do i add node version here