Jérôme 5e30d264bd | 6 years ago | |
---|---|---|
LICENSE | 6 years ago | |
README.md | 6 years ago | |
konnector.js | 6 years ago | |
manifest.konnector | 6 years ago | |
package.json | 6 years ago |
Cozy is a platform that brings all your web services in the same private space. With it, your webapps and your devices can share data easily, providing you with a new experience. You can install Cozy on your own hardware where no one’s tracking you.
If you want to work on this konnector and submit code modifications, feel free to open pull-requests! See the [contributing guide][contribute] for more information about how to properly open pull-requests.
This connector uses cozy-konnector-libs. You can find more documentation about it there.
If you just want to test this connector without any cozy available.
You first need an installed nodejs (LTS version is fine).
Just run :
npm install
npm run standalone
The requests to the cozy-stack will be stubbed using the [./fixture.json] file as source of data and when cozy-client is asked to create or update data, the data will be output to the console. The bills (or any file) will be saved in the . directory.
If you do not want to have to install the konnector on a cozy v3 to test it, you can register the konnector as an OAuth application with the following commands :
npm install
npm run dev
This command will register your konnector as an OAuth application to the cozy-stack. By default, the cozy-stack is supposed to be located in http://cozy.tools:8080. If this is not your case, just update the COZY_URL field in [./konnector-dev-config-json].
After that, your konnector is running but should not work since you did not specify any credentials to the target service. You can do this also in [./konnector-dev-config.json] in the “fields” attribute.
Now run yarn dev
one more time, it should be ok.
The files are saved in the root directory of your cozy by default.
The cozy-stack runs the connector in a nsjail container to be sure it does not affect the environment.
The connector is run by calling npm start with the following envrionment variables :
cozy-stack instances token-cli <instance name> <scope>
{
"data":{
"attributes":{
"arguments":{
"account":"cf31eaef5d899404a7e8c3737c1c2d1f",
"folder_to_save":"folderPathId",
"slug":"mykonnector"
}
}
}
}
The “account” field is the id of the record with doctype “io.cozy.accounts” which will be used as parameters for your konnector.
To be able to run the connector, the cozy stack needs a connector which is built into only one file, without needing to npm install it, this will be a lot faster to install.
There is a command in package.json to help you to do that : npm run build
This command uses webpack to bundle all the code needed by your connector into one file.
This will generate an index.js file in the build directory and add all files the connector will need.
You can deploy this build by using the specific script : npm run deploy
This command will commit and push your build in the branch build
fo your project.
And your konnector can now be installed using the following url :
git://github.com/cozy/cozy-konnector-.git#build
This project contains a .travis.yml
config file which allows you to build your connector
automatically using Travis-CI.
You can follow these steps to enable building using Travis:
GITHUB_TOKEN
and use your previous generated Github token as value (We highly recommand you to keep the checkbox “Display value in build log” to OFF value in order to keep your token value hidden in the Travis logs.)Now Travis is ready to build your project, it should build it each time your push a commit in your repository or create a pull request.
Note: Travis will push your build to your
build
branch ONLY for commits made on your master branch (included PR merge commits). You can see the related Travis statement here.
The Cozy Collect application will soon use an application store as source of connectors. But for now, if you want to add your new connector to Cozy Collect, you can submit a message in the forum in the collect section, and we will handle this for you.
We use standard to format the index.js
file. You can run it with:
npm run lint
The lead maintainers for this konnector is
You can reach the Cozy Community by:
is developed by and distributed under the AGPL v3 license.