Done with docs.
parent
e2431965a4
commit
5e3caa774a
|
@ -1,6 +1,22 @@
|
|||
# Run on a Local Machine
|
||||
|
||||
If you want to run a server on a LAN for personal use, this is the easiest and cheapest option.
|
||||
|
||||
**Simplicity:** :heart::heart::heart:
|
||||
**Reliability:** :broken_heart:
|
||||
**Affordability:** :heart::heart::heart:
|
||||
|
||||
1. Follow the [developer setup guide](https://github.com/FarmBot/Farmbot-Web-API#developer-setup).
|
||||
2. Run `rails s -e production -b 0.0.0.0` (Set ENV vars accordingly).
|
||||
|
||||
# Deployment to Dokku (cheaper)
|
||||
|
||||
**NOTE TO USERS**: We no longer deploy the server using Dokku. Although we will make a best effort to support Dokku users, our ability to provide troubleshooting and documentation for Dokku setups is limited since we do not use it ourselves.
|
||||
|
||||
**Simplicity:** :broken_heart:
|
||||
**Reliability:** :heart::heart:
|
||||
**Affordability:** :heart::heart:
|
||||
|
||||
0. Provision a fresh Ubuntu 16 server (we use DigitalOcean's "Ubuntu 16 docker" image).
|
||||
* Make sure you have atleast 1gb.
|
||||
0. [Install the latest version of Dokku (don't use that DigitalOcean image)](https://github.com/dokku/dokku#installing)
|
||||
|
@ -23,8 +39,12 @@
|
|||
|
||||
# Deployment Using Heroku (easier)
|
||||
|
||||
1. Deploy as you would normally [deploy to Heroku](https://devcenter.heroku.com/articles/getting-started-with-rails4#deploy-your-application-to-heroku)
|
||||
2. Enable Dyno metadata: `heroku labs:enable runtime-dyno-metadata --app <app name>`
|
||||
**Simplicity:** :heart::heart::heart::heart:
|
||||
**Reliability:** :heart::heart::heart::heart:
|
||||
**Affordability:** :broken_heart:
|
||||
|
||||
1. Deploy as you would normally [deploy to Heroku](https://devcenter.heroku.com/articles/getting-started-with-rails4#deploy-your-application-to-heroku)
|
||||
2. Enable Dyno metadata: `heroku labs:enable runtime-dyno-metadata --app <app name>` (we need this to know the version number of the web app).
|
||||
|
||||
# Setting up SSL
|
||||
|
||||
|
@ -42,7 +62,7 @@ http://yourdomain.io/.well-known/acme-challenge/SOME-LONG-URL before continuing:
|
|||
|
||||
ya6k1edW38z-CopyThisValueNow!!!
|
||||
|
||||
```
|
||||
```
|
||||
|
||||
Set the `ACME_SECRET` ENV var to the value shown above (yours will be different) and **restart your API process**.
|
||||
|
||||
|
@ -64,7 +84,8 @@ heroku certs:add /etc/letsencrypt/live/yourdomain.io/fullchain.pem /etc/letsencr
|
|||
|
||||
Heroku will then give you instructions on which DNS records you must create.
|
||||
|
||||
**Dokku Users**: We haven't had a need for this yet, because we usually run Dokku on staging setups only. Please [raise an issue](https://github.com/FarmBot/farmbot-web-frontend/issues/new) to receive support.
|
||||
**Dokku Users**: FarmBot, Inc. no longer uses Dokku. As such, our ability to troubleshoot problems is limited.
|
||||
Please [raise an issue](https://github.com/FarmBot/farmbot-web-frontend/issues/new) to receive community support.
|
||||
|
||||
# Renew SSL Certificates
|
||||
|
||||
|
|
2
Gemfile
2
Gemfile
|
@ -1,5 +1,5 @@
|
|||
source "https://rubygems.org"
|
||||
ruby "2.3.2"
|
||||
ruby "2.3.3"
|
||||
|
||||
gem "rails", "5.0.0.1"
|
||||
gem "thin"
|
||||
|
|
|
@ -225,7 +225,7 @@ DEPENDENCIES
|
|||
thin
|
||||
|
||||
RUBY VERSION
|
||||
ruby 2.3.2p217
|
||||
ruby 2.3.3p222
|
||||
|
||||
BUNDLED WITH
|
||||
1.13.6
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
# Do I need this?
|
||||
|
||||
This repository is intended for *software developers* who wish to modify the [Farmbot Web App](http://my.farmbot.io/). **If you are not a developer**, you are highly encouraged to use [the publicly available web app](http://my.farmbot.io/).
|
||||
This repository is intended for *software developers* who wish to modify the [Farmbot Web App](http://my.farmbot.io/). **If you are not a developer**, you are highly encouraged to use [the publicly available web app](http://my.farmbot.io/). Running a server is a non-trivial task which will require an intermediate background in Ruby, SQL and Linux system administration.
|
||||
|
||||
If you are a developer interested in contributing or would like to provision your own server, you are in the right place.
|
||||
|
||||
|
@ -11,7 +11,7 @@ If you are a developer interested in contributing or would like to provision you
|
|||
|
||||
**[LATEST STABLE VERSION IS HERE](https://github.com/FarmBot/Farmbot-Web-API/releases)** :star: :star: :star:
|
||||
|
||||
This Repo is RESTful JSON API for Farmbot. This includes things like storage of user data, plant data, authorization tokens and a variety of other resources.
|
||||
This Repo is the RESTful JSON API for Farmbot. This includes things like storage of user data, plant data, authorization tokens and a variety of other resources.
|
||||
|
||||
The key responsibility of the API is *information and permissions management*. This should not be confused with device control, which is done via [MQTT](https://github.com/FarmBot/mqtt-gateway).
|
||||
|
||||
|
@ -25,7 +25,7 @@ For a list of example API requests and responses, see our [reference documentati
|
|||
|
||||
Your machine will need the following:
|
||||
|
||||
0. [Ruby 2.3.2](http://rvm.io/rvm/install)
|
||||
0. [Ruby 2.3.3](http://rvm.io/rvm/install)
|
||||
|
||||
### Setup
|
||||
0. `git clone https://github.com/FarmBot/Farmbot-Web-API farmbot-web-app`
|
||||
|
@ -124,4 +124,4 @@ $.ajax({
|
|||
|
||||
# Want to Help?
|
||||
|
||||
[Low Hanging Fruit](https://github.com/FarmBot/Farmbot-Web-API/search?utf8=%E2%9C%93&q=todo)
|
||||
[Low Hanging Fruit](https://github.com/FarmBot/Farmbot-Web-API/search?utf8=%E2%9C%93&q=todo). [Raise an issue](https://github.com/FarmBot/Farmbot-Web-API/issues/new?title=Question%20about%20a%20TODO) if you have any questions.
|
||||
|
|
|
@ -1,22 +1,23 @@
|
|||
# EXAMPLE FOR MYSQL USERS:
|
||||
# ========================
|
||||
# default: &default
|
||||
# adapter: mysql
|
||||
# encoding: utf8
|
||||
# pool: 5
|
||||
# timeout: 5000
|
||||
#
|
||||
|
||||
# development:
|
||||
# <<: *default
|
||||
# database: farmbot_api_dev
|
||||
# password: "password123"
|
||||
#
|
||||
|
||||
# test:
|
||||
# <<: *default
|
||||
# database: farmbot_api_test
|
||||
# password: "password123"
|
||||
#
|
||||
|
||||
# production:
|
||||
# <<: *default
|
||||
|
||||
default: &default
|
||||
adapter: sqlite3
|
||||
database: db/db_dev_db.sqlite3
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
# module Mongoid
|
||||
# puts "TODO: DELETE THIS!!"
|
||||
# module Errors
|
||||
# puts "TODO: DELETE THIS!!"
|
||||
# class DocumentNotFound < Exception
|
||||
# puts "TODO: DELETE THIS!!"
|
||||
# end
|
||||
|
||||
# class InvalidFind < Exception
|
||||
# puts "TODO: DELETE THIS!!"
|
||||
# end
|
||||
|
||||
|
||||
# class Validations < Exception
|
||||
# puts "TODO: DELETE THIS!!"
|
||||
# end
|
||||
# end
|
||||
# end
|
|
@ -19,7 +19,6 @@ describe CeleryScript::TreeClimber do
|
|||
end
|
||||
|
||||
it "searches the tree for a specific `kind`" do
|
||||
# TODO: Remove this in the name of simplicity?
|
||||
query = CeleryScript::TreeClimber.find_all_by_kind(node, "var_get")
|
||||
expect(query.length).to eq(1)
|
||||
expect(query.first.kind).to eq("var_get")
|
||||
|
|
Loading…
Reference in New Issue