Skip to content
triangle

GitHub Action

Cloudflare KV Action

v1.0.1 Latest version

Cloudflare KV Action

triangle

Cloudflare KV Action

Cloudflare KV Action

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Cloudflare KV Action

uses: zentered/[email protected]

Learn more about this action in zentered/cloudflare-kv-action

Choose a version

Cloudflare KV Action

Test Release semantic-release: conventional Conventional Commits

Put and get values from Cloudflare KV.

Table of Contents

Usage

Copy your "Global API Key"

Cloudflare needs a little time to build the preview, you can check the average build time in your deployments and add the seconds plus a little to a sleep action, to wait until the deployment is ready. The action only works on branches, so make sure you exclude the main branch from the trigger:

on:
  push:
    branches:
      - '**'
      - '!main'

Here are the steps for an example job:

- run: sleep 30
- name: cloudflare-kv-action
  uses: zentered/[email protected]
  id: cloudflare_kv
  env:
    CLOUDFLARE_API_KEY: ${{ secrets.CLOUDFLARE_API_KEY }}
    CLOUDFLARE_ACCOUNT_EMAIL: ${{ secrets.CLOUDFLARE_ACCOUNT_EMAIL }}
    CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
  with:
    namespace_identifier: '123'
    key_name: 'hello'
    value: 'world'
    expiration_ttl: 120
- name: Value
  run: echo "${{ steps.cloudflare_kv.outputs.value }}"

Environment Variables / Secret

In the repository, go to "Settings", then "Secrets" and add "CLOUDFLARE_API_TOKEN", the value you can retrieve on your Cloudflare account. You also need to add:

  • CLOUDFLARE_ACCOUNT_EMAIL (your login email, optional)
  • CLOUDFLARE_ACCOUNT_ID (from the URL: https://dash.cloudflare.com/123abc....)
  • CLOUDFLARE_API_KEY (from the URL: https://dash.cloudflare.com/profile/api-tokens)

Inputs

Name Requirement Description
namespace_identifier required Cloudflare namespace ID
key_name required KV key name
value optional Optional: Use "value" to set a key, otherwise it will be retrieved
expiration optional Optional: expiration
expiration_ttl optional Optional: If neither expiration nor expiration_ttl is specified, the key-value pair will never expire. If both are set, expiration_ttl is used and expiration is ignored.

Cloudflare API Reference

Outputs

Name Description
value KV value

Contributing

See CONTRIBUTING.

License

See LICENSE.