Use this action to send a post from GitHub actions workflow.
This action is implemented in the Dart language and uses bluesky for posting to Bluesky Social.
Configure your workflow to use myConsciousness/bluesky-post@v3
,
and provide the post you want to send as the text
input.
Provide Bluesky's ATP server with identifier
(handle or email) and password
to create a session.
For example:
name: Send Bluesky Post
on:
[push]
jobs:
post:
runs-on: ubuntu-latest
steps:
- uses: myConsciousness/bluesky-post@v3
with:
text: "Hello, Bluesky!"
identifier: ${{ secrets.BLUESKY_IDENTIFIER }}
password: ${{ secrets.BLUESKY_PASSWORD }}
Now whenever you push something to your repository, GitHub Actions will post to Bluesky on your behalf.
Note
In the Bluesky API, themention
andlink
functions will not work unless thefacet
parameter is set correctly when the request is sent, but this Action will automatically extract valid handle and link from the text and set the facet.
Bluesky Social is a distributed microservice.
So you may possibly want to post to a ATP server other than bsky.social
.
In that case, set the service
parameter to the authority you wish to post as follows.
If the service
parameter is omitted, the default is bsky.social
.
name: Send Bluesky Post
on:
[push]
jobs:
post:
runs-on: ubuntu-latest
steps:
- uses: myConsciousness/bluesky-post@v3
with:
text: "Hello, Bluesky!"
identifier: ${{ secrets.BLUESKY_IDENTIFIER }}
password: ${{ secrets.BLUESKY_PASSWORD }}
service: "boobee.blue"
Server error or network errors may temporarily occur during API communication to the ATP server. In such cases, retrying at regular intervals may result in successful processing.
This Actions supports Retry
, and you can specify the maximum number of retries.
The default retry count is 5.
You can specify the following.
name: Send Bluesky Post
on:
[push]
jobs:
post:
runs-on: ubuntu-latest
steps:
- uses: myConsciousness/bluesky-post@v3
with:
text: "Hello, Bluesky!"
identifier: ${{ secrets.BLUESKY_IDENTIFIER }}
password: ${{ secrets.BLUESKY_PASSWORD }}
retry-count: 5
You can also post a text with an image of a specified file path attached.
name: Send Bluesky Post
on:
[push]
jobs:
post:
runs-on: ubuntu-latest
steps:
# You must checkout resources
- uses: actions/checkout@v3
- uses: myConsciousness/bluesky-post@v3
with:
text: "Hello, Bluesky!"
media: cool_photo.png
media-alt: "This is a cool photo!"
identifier: ${{ secrets.BLUESKY_IDENTIFIER }}
password: ${{ secrets.BLUESKY_PASSWORD }}
bluesky_post was designed and implemented by Shinya Kato (@myConsciousness).