collective.bluesky is a package providing a Plone content rules action to post a status to Bluesky.
This package supports Plone sites using Volto and ClassicUI.
For proper Volto support, the requirements are:
- plone.restapi >= 8.34.0
- Volto >= 16.10.0
Add collective.bluesky to the Plone installation using pip
:
pip install collective.bluesky
or add it as a dependency on your package's setup.py
install_requires = [
"collective.bluesky",
"Plone",
"plone.restapi",
"setuptools",
],
Before you can use this package, you have to register an App Password on Bluesky.
To do so, log in to your account, visit App Password and add a new App Password
.
Go to the newly created application page and copy the value of Your access token
.
This package is configured via the BLUESKY_APPS
environment variable which should contain a valid JSON array with your Bluesky Application information.
Each application registration requires the following information:
Key | Description | Example Value |
---|---|---|
host | Hostname of the instance to be used. Default value: bsky.app |
sandbox.tld |
handle | Handle used to log in the host (without the @) | demo |
app_password | Application password | 1232434323234 |
protocol | Host protocol. Default value: https |
https |
Using the information above, the environment variable would look like:
BLUESKY_APPS='[{"host":"bsky.app","handle":"demo","app_password":"1232434323234"}]'
Now, you can start your local Plone installation with:
BLUESKY_APPS='[{"host":"bsky.app","handle":"demo","app_password":"1232434323234"}]' make start
or, if you are using a docker compose
configuration, add the new environment variable under the environment
key:
environment:
- BLUESKY_APPS=[{"host":"bsky.app","handle":"demo","app_password":"1232434323234"}]
After start-up visit the Content Rules
Control Panel, and create a new content rule.
No additional configuration is needed for Volto support.
If you want to help with the development (improvement, update, bug-fixing, ...) of collective.bluesky
this is a great idea!
We appreciate any contribution and if a release is needed to be done on PyPI, please just contact one of us.
You need a working python
environment (system, virtualenv
, pyenv
, etc) version 3.8 or superior.
Then install the dependencies and a development instance using:
make build
make i18n
make format
Testing of this package is done with pytest
and tox
.
Run all tests with:
make test
Run all tests but stop on the first error and open a pdb
session:
./bin/tox -e test -- -x --pdb
Run only tests that match TestAppDiscovery
:
./bin/tox -e test -- -k TestAppDiscovery
Run only tests that match TestAppDiscovery
, but stop on the first error and open a pdb
session:
./bin/tox -e test -- -k TestAppDiscovery -x --pdb
This product has been translated into:
- English (Érico Andrei)
- Português do Brasil (Érico Andrei)
The project is licensed under GPLv2.
Originally Made in São Paulo, Brazil, with love, by your friends @ Simples Consultoria.
Now maintained by the Plone Collective