Envoyer une nouvelle application
api.applications.create(file) envoie un zip et crée une toute nouvelle application. L’argument file est soit un chemin de fichier local, soit un Buffer.
import { SquareCloudAPI } from "@squarecloud/api";
import { join } from "node:path";
const api = new SquareCloudAPI(process.env.SQUARE_API_KEY!);
const result = await api.applications.create(join(__dirname, "my-app.zip"));
console.log(result.id); // ID de l'application nouvellement créée
console.log(result.name); // nom d'affichage
console.log(result.lang); // slug du langage (e.g. "javascript")
console.log(result.ram); // RAM allouée en Mo
Le zip doit contenir au minimum :
- Fichier principal — point d’entrée de votre application
- Fichier de dépendances —
package.json, requirements.txt, etc.
squarecloud.app — fichier de configuration avec le nom, la description, le fichier principal, la version, etc. Consultez le guide du fichier de configuration
Committer des fichiers vers une application existante
app.commit(file, fileName?) envoie des fichiers dans une application déjà déployée. Passez un zip pour remplacer plusieurs fichiers à la fois, ou un seul fichier pour ne mettre à jour que celui-ci.
| Paramètre | Type | Description |
|---|
file | string | Buffer | Chemin de fichier local ou contenu Buffer |
fileName | string? | Nom associé à l’envoi. Un .zip est extrait sur le serveur ; toute autre extension est écrite comme un fichier unique. |
Committer un seul fichier (Buffer)
Committer un zip depuis le disque
Committer un fichier par chemin
const content = Buffer.from("console.log('hello')\n");
await app.commit(content, "index.js");
import { readFile } from "node:fs/promises";
const zip = await readFile("./dist.zip");
await app.commit(zip, "dist.zip");
import { join } from "node:path";
const filePath = join(__dirname, "index.js");
await app.commit(filePath, "index.js");
En v3, commit() acceptait un troisième argument restart. En v4, ce troisième paramètre a été supprimé — utilisez app.restart() après le commit si vous avez besoin d’un redémarrage.
await app.commit(zip, "dist.zip");
await app.restart();