CloudWorker vous permet d'exécuter localement les scripts de travailleurs CloudFlare.
Installer via NPM:
NPM Install -g @ DollaShaveclub / CloudWorker
const Cloudworker = require('@dollarshaveclub/cloudworker') const simpleScript = `addEventListener('fetch', event => { event.respondWith(new Response('hello', {status: 200})) })` const req = new Cloudworker.Request('https://myfancywebsite.com/someurl') const cw = new Cloudworker(simpleScript) cw.dispatch(req).then((res) => { console.log("Response Status: ", res.status) res.text().then((body) =>{ console.log("Response Body: ", body) }) })
Utilisation: CloudWorker [Options] <Fichier> Options: -p, --port <port> port (par défaut: 3000) -d, - debug debug -s, --kv-set [variable.key = value] lie la variable à une implémentation locale des travailleurs KV et définit la clé de la valeur (par défaut: []) -f, --kv-file [variable = chemin] Définissez le filepath pour la péristie de la valeur pour l'implémentation locale des travailleurs KV (par défaut: []) -W, --wasm [variable = path] se lie à la variable à wasm situé sur chemin (par défaut: []) -C, --Enable-cache active le cache <beta> -R, --vater le script du travailleur et redémarrez le travailleur lorsque des modifications sont détectées -H, - Help Informations d'utilisation de sortie
CloudWorker Exemple / Exemple.js curl localhost: 3000 /
CloudWorker - Debug Exemple / Exemple.js curl localhost: 3000 /
CloudWorker --debug --kv-set keyvaluestore.key = value --kv-set keyvaluestore.hello = world exemple / exemple-kv.js curl localhost: 3000 /
CloudWorker --debug --kv-file keyvaluestore = kv.json --kv-set keyvaluestore.key = value --kv-set keyvaluestore.hello = world example / example-kv.js curl localhost: 3000 /
CloudWorker --debug --wasm wasm = exemple / simple.wasm exemple / exemple-wasm-simple.js curl localhost: 3000 /
Source WebAssembly
CloudWorker --debug --wasm isqrt = example / iSqrt.Wasm Exemple / Exemple-wasm-isqrt.js curl localhost: 3000 /? num = 9
Source WebAssembly
CloudWorker --debug --wasm résis curl localhost: 3000 / wasm-demo / dogdrone.png? width = 210 # ou ouvert dans le navigateur
Source WebAssembly
CloudWorker s'efforce d'être aussi similaire à l'exécution du travailleur CloudFlare que possible. Un script doit se comporter de la même manière lorsqu'il est exécuté par CloudWorker et lorsqu'il est exécuté au sein des travailleurs CloudFlare. Veuillez déposer un problème pour des scénarios dans lesquels le cloudworker se comporte différemment. Au fur et à mesure que les différences de comportement sont trouvées, ce package sera mis à jour pour correspondre à l'exécution de CloudFlare Worker. Cela peut entraîner une rupture si les scripts dépendaient de ces différences de comportement.
Pour les sorties bêta:
Créez une nouvelle branche de version nommée v[version]-beta
. par exemple v0.0.10-beta
Exécutez npm version [version]-beta.[beta number]
. par exemple npm version 0.0.10-beta.1
Poussez la branche à l'origine.
Exécuter npm publish --tag beta
.
Créez une nouvelle version dans GitHub à l'aide de la balise créée par npm version
, écrivez des notes de version pertinentes et assurez-vous que "Ceci est un pré-libération" est vérifié.
Les corrections de bogues et les modifications doivent être apportées sur les branches de fonctionnalités, fusionnées dans Master, puis fusionnées dans la branche de libération.
Les versions bêta ultérieures de la même version bêta doivent être réalisées à partir de la même branche de version.
Pour les versions de production:
Merger Branch de libération (si l'on existe) dans Master.
Exécutez npm version [version]
. par exemple npm version 0.0.10
Push Master à Origin.
Exécutez npm publish
.
Créez une nouvelle version dans GitHub à l'aide de la balise créée par npm version
et copiez les notes de version de Beta.
Mit