Read-only mirror — the public repositories of the Forgejo instance, refreshed every 10 minutes. The live instance (fg.dieschoenewolke.de) is reachable only over the VPN; clone here with https://git.dieschoenewolke.de/git/<owner>/<repo>.git.
summaryrefslogtreecommitdiff
path: root/src/state-helper.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/state-helper.ts')
-rw-r--r--src/state-helper.ts30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/state-helper.ts b/src/state-helper.ts
new file mode 100644
index 0000000..0f86a14
--- /dev/null
+++ b/src/state-helper.ts
@@ -0,0 +1,30 @@
+import * as core from '@actions/core'
+import * as coreCommand from '@actions/core/lib/command'
+
+/**
+ * Indicates whether the POST action is running
+ */
+export const IsPost = !!process.env['STATE_isPost']
+
+/**
+ * The repository path for the POST action. The value is empty during the MAIN action.
+ */
+export const RepositoryPath =
+ (process.env['STATE_repositoryPath'] as string) || ''
+
+/**
+ * Save the repository path so the POST action can retrieve the value.
+ */
+export function setRepositoryPath(repositoryPath: string) {
+ coreCommand.issueCommand(
+ 'save-state',
+ {name: 'repositoryPath'},
+ repositoryPath
+ )
+}
+
+// Publish a variable so that when the POST action runs, it can determine it should run the cleanup logic.
+// This is necessary since we don't have a separate entry point.
+if (!IsPost) {
+ coreCommand.issueCommand('save-state', {name: 'isPost'}, 'true')
+}