GitHub Action
ZEIT Now Deployment
ZEIT Now is a cloud platform for static sites and Serverless Functions
Please use Vercel Action instead.
This action remains reserved for previous users (now-deployment) .
This action make a ZEIT Now deployment with github actions.
- Deploy to ZEIT now.
- Comment on pull request.
- Comment on commit.
- Password Protect ( Basic Auth )
- Create Deployment on github.
Name | Required | Default | Description |
---|---|---|---|
zeit-token | [x] | ZEIT now token. | |
github-comment | [ ] | true | if you don't want to comment on pull request. |
github-token | [ ] | if you want to comment on pull request. | |
now-args | [ ] | This is optional args for now cli. Example: --prod |
|
working-directory | [ ] | the working directory | |
now-project-id | [x] | ❗️Now CLI 17+,The name property in now.json is deprecated (https://zeit.ink/5F) |
|
now-org-id | [x] | ❗️Now CLI 17+,The name property in now.json is deprecated (https://zeit.ink/5F) |
The url of deployment preview.
The name of deployment name.
The ZEIT Now for GitHub integration automatically deploys your GitHub projects with ZEIT Now, providing Preview Deployment URLs, and automatic Custom Domain updates. link
We would like to to use github actions
for build and deploy instead of ZEIT Now
.
Set github.enabled: false
in now.json
{
"version": 2,
"public": false,
"github": {
"enabled": false
},
"builds": [
{ "src": "./public/**", "use": "@now/static" }
],
"routes": [
{ "src": "/(.*)", "dest": "public/$1" }
]
}
When set to false, ZEIT Now for GitHub
will not deploy the given project regardless of the GitHub app being installed.
now.json
Example:
{
"version": 2,
"scope": "amond",
"public": false,
"github": {
"enabled": false
},
"builds": [
{ "src": "./public/**", "use": "@now/static" }
],
"routes": [
{ "src": "/(.*)", "dest": "public/$1" }
]
}
You should link a project via Now CLI in locally.
When running now
in a directory for the first time, Now CLI needs to know which scope and Project you want to deploy your directory to. You can choose to either link an existing project or to create a new one.
NOTE: Project linking requires at least version 17 of Now CLI. If you have an earlier version, please update to the latest version.
now
? Set up and deploy “~/web/my-lovely-project”? [Y/n] y
? Which scope do you want to deploy to? My Awesome Team
? Link to existing project? [y/N] y
? What’s the name of your existing project? my-lovely-project
🔗 Linked to awesome-team/my-lovely-project (created .now and added it to .gitignore)
Once set up, a new .now
directory will be added to your directory. The .now
directory contains both the organization(now-org-id
) and project(now-project-id
) id of your project.
{"orgId":"example_org_id","projectId":"example_project_id"}
You can save both values in the secrets setting in your repository. Read the Official documentation if you want further info on how secrets work on Github.
- This is a complete
.github/workflow/deploy.yml
example.
Set the now-project-id
and now-org-id
you found above.
name: deploy website
on: [pull_request]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: amondnet/now-deployment@v2
with:
zeit-token: ${{ secrets.ZEIT_TOKEN }} # Required
github-token: ${{ secrets.GITHUB_TOKEN }} #Optional
now-args: '--prod' #Optional
now-org-id: ${{ secrets.ORG_ID}} #Required
now-project-id: ${{ secrets.PROJECT_ID}} #Required
working-directory: ./sub-directory
See .github/workflow/example-angular.yml ,
How to add Basic Authentication to a Now deployment