Skip to content

Instantly share code, notes, and snippets.

@steffencrespo
Created November 6, 2017 15:55
Show Gist options
  • Star 31 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save steffencrespo/829d0900f3314acffe462f2e552dd3f6 to your computer and use it in GitHub Desktop.
Save steffencrespo/829d0900f3314acffe462f2e552dd3f6 to your computer and use it in GitHub Desktop.
Deploy Netlify & TravisCI
1-In the github repo on Settings > Integration & Services, enable
2-Go to travisCI page and enable the repo
3-Configure the env variables on TravisCI so that it is not necessary to save credentials on github
-in the project Settings on TravisCI, add the entry for netlify site id: NETLIFY_SITE_ID - <site_id from .netlify file generated on netlify create>
-create a netlify access token for TravisCI
-On Netlify Dashboard, Go to Account Settings > OAuth Applications (https://app.netlify.com/account/applications) > Personal access tokens and press New Access Token
-Name it anything, but to make it easier the suggestion is name TravisCI.
-Generate it and COPY it - you won’t see it again!
-in the project Settings on TravisCI, add the entry for netlify personal access token generated for TravisCI: NETLIFY_ACCESS_TOKEN
4-Generate a .travis.yml file in the local repo
-create a .travis.yml file in the root of the local repo with the following content:
language: node_js
node_js: node
cache:
directories:
- node_modules
script:
- npm test
env:
- CI=true
before_deploy:
- npm install netlify-cli -g
- npm run build
deploy:
provider: script
script: netlify deploy -s $NETLIFY_SITE_ID -t $NETLIFY_ACCESS_TOKEN -p ./build
skip_cleanup: true
on:
branch: master
@Necmttn
Copy link

Necmttn commented Mar 8, 2018

Thank you ! 🍻

@thidasapankaja
Copy link

Followed this. But I see my development structure (Not minified) in the hosted site.

@antekai
Copy link

antekai commented Oct 17, 2018

This travis config(.yml) was working some months ago but not today for me.
If anyone has errors like Error: Unexpected arguments: -t or Error: Unexpected argument: ./build change deploy script

...from: script: netlify deploy -s $NETLIFY_SITE_ID -t $NETLIFY_ACCESS_TOKEN -p ./build
...to: script: netlify deploy -s $NETLIFY_SITE_ID --auth $NETLIFY_ACCESS_TOKEN -p --dir ./build

@ademidun
Copy link

Thanks @antekai and @steffencrespo 👍🏿!

Does anyone else ever think about how awesome the internet is? Random strangers helping each other out, saving hours (and maybe years?) of our life. A great time to be alive!

@joberthrogers18
Copy link

Thanks @antekai, help a lot XD

@gagofure
Copy link

image

I am having issues deploying to netlify. Does anyone have an idea on how I can fix this

@mikemellor11
Copy link

New to netlify, but it looks like you can't do this with personal access tokens anymore, the new way is using the auth token which can be found in ~/.netlify/config.json after running the netlify-cli command directly in the repo on your local machine. After you have that token swap it out for the personal access token in your deploy command like this.

script: netlify deploy -s $NETLIFY_SITE_ID -a $NETLIFY_AUTH_TOKEN -p -d ./dist

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment