]> gitweb.factorcode.org Git - factor.git/commitdiff
hetzner, github: remove cloud/web-services prefixes
authorDoug Coleman <doug.coleman@gmail.com>
Sun, 30 Jan 2022 18:46:00 +0000 (12:46 -0600)
committerDoug Coleman <doug.coleman@gmail.com>
Sun, 30 Jan 2022 18:46:00 +0000 (12:46 -0600)
extra/cloud/hetzner/authors.txt [deleted file]
extra/cloud/hetzner/hetzner.factor [deleted file]
extra/github/github.factor [new file with mode: 0644]
extra/github/tags.txt [new file with mode: 0644]
extra/hetzner/authors.txt [new file with mode: 0644]
extra/hetzner/hetzner.factor [new file with mode: 0644]
extra/hetzner/tags.txt [new file with mode: 0644]
extra/web-services/github/github.factor [deleted file]

diff --git a/extra/cloud/hetzner/authors.txt b/extra/cloud/hetzner/authors.txt
deleted file mode 100644 (file)
index 7c1b2f2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Doug Coleman
diff --git a/extra/cloud/hetzner/hetzner.factor b/extra/cloud/hetzner/hetzner.factor
deleted file mode 100644 (file)
index 29fcad0..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-! Copyright (C) 2022 Doug Coleman.
-! See http://factorcode.org/license.txt for BSD license.
-USING: assocs assocs.extras formatting http http.client io
-io.encodings.string io.encodings.utf8 json.reader kernel
-namespaces sequences sequences.generalizations ;
-IN: cloud.hetzner
-
-SYMBOL: hetzner-access-token
-
-CONSTANT: hetzner-api-v1 "https://api.hetzner.cloud/v1/"
-
-ERROR: hetzner-access-token-required symbol ;
-
-: get-hetzner-token ( -- token/* )
-    hetzner-access-token get [
-        hetzner-access-token hetzner-access-token-required
-    ] unless* ;
-
-: set-hetzner-auth-header ( request -- request )
-    "Bearer " get-hetzner-token append "Authorization" set-header ;
-
-: hetzner-get ( route -- json )
-    hetzner-api-v1 prepend <get-request>
-    set-hetzner-auth-header http-request nip utf8 decode json> ;
-
-! Actions
-: get-hetzner-actions ( -- servers ) "actions" hetzner-get ;
-: get-hetzner-action ( action-id -- servers ) "actions/%d" sprintf hetzner-get ;
-
-! Certificates
-: get-hetzner-certificates ( -- servers ) "certificates" hetzner-get ;
-
-! Datacenters
-: get-hetzner-datacenters ( -- servers ) "datacenters" hetzner-get ;
-: get-hetzner-datacenter ( datacenter-id -- servers ) "datacenters/%s" sprintf hetzner-get ;
-
-! Firewalls
-: get-hetzner-firewalls ( -- servers ) "firewalls" hetzner-get ;
-
-! Floating IPs
-: get-hetzner-floating-ips ( -- servers ) "floating_ips" hetzner-get ;
-
-! Images
-: get-hetzner-images ( -- servers ) "images" hetzner-get ;
-
-! ISOs
-: get-hetzner-isos ( -- servers ) "isos" hetzner-get ;
-: get-hetzner-iso ( iso-id -- servers ) "isos/%d" sprintf hetzner-get ;
-
-! Locations
-: get-hetzner-locations ( -- servers ) "locations" hetzner-get ;
-
-! Networks
-: get-hetzner-networks ( -- servers ) "networks" hetzner-get ;
-
-! Pricing
-: get-hetzner-pricing ( -- servers ) "pricing" hetzner-get ;
-
-! Servers
-: get-hetzner-servers ( -- servers ) "servers" hetzner-get ;
-: get-hetzner-server-by-id ( id -- servers ) "servers/%d" sprintf hetzner-get ;
-
-: server-type. ( hash -- )
-    { "description" "cores" "cpu_type" "memory" "disk" } values-of 5 firstn
-    "%s: %d cores %s,  %dGB RAM, %d GB disk" sprintf print ;
-
-: hetzner-servers. ( -- )
-    get-hetzner-servers "servers" of [ "server_type" of server-type. ] each ;
-
-! Server Types
-: get-hetzner-server-types ( -- servers ) "server_types" hetzner-get ;
-
-! SSH Keys
-: get-hetzner-ssh-keys ( -- servers ) "ssh_keys" hetzner-get ;
-
-! Volumes
-: get-hetzner-volumes ( -- servers ) "volumes" hetzner-get ;
-
-! Volume Actions
-: get-hetzner-volume-actions ( volume-id -- servers ) "volumes/%d/actions" sprintf hetzner-get ;
-: get-hetzner-volume-action ( volume-id action-id -- servers ) "volumes/%d/actions/%d" sprintf hetzner-get ;
diff --git a/extra/github/github.factor b/extra/github/github.factor
new file mode 100644 (file)
index 0000000..8ff0a0d
--- /dev/null
@@ -0,0 +1,37 @@
+! Copyright (C) 2017 Doug Coleman.
+! See http://factorcode.org/license.txt for BSD license.
+USING: assocs cli.git formatting http.client io.pathnames
+json.reader kernel math namespaces sequences ;
+IN: github
+
+SYMBOL: github-username
+SYMBOL: github-token
+
+! type is orgs, users
+:: get-repositories-with-credentials ( type name username token -- seq )
+    0 [ dup ] [
+        1 + dup
+        [ username token type name ] dip
+        "https://%s:%s@api.github.com/%s/%s/repos?per_page=100&page=%d" sprintf http-get nip json>
+        dup empty? [ 2drop f f ] [ ] if
+    ] produce nip concat ;
+
+: get-repositories ( type name -- seq )
+    github-username get
+    github-token get
+    get-repositories-with-credentials ;
+
+: sync-github-org-or-user ( directory type name -- )
+    get-repositories
+    [ "ssh_url" of ] map sync-repositories ;
+
+: sync-github-org ( directory name -- ) "orgs" swap sync-github-org-or-user ;
+: sync-github-user ( directory name -- ) "users" swap sync-github-org-or-user ;
+
+: github-git-uri ( user/org project -- uri ) [ "git@github.com" ] 2dip "/" glue ":" glue ;
+: github-ssh-uri ( user/org project -- uri ) [ "https://github.com" ] 2dip 3append-path ;
+: github-git-clone-as ( user/org project name -- process ) [ github-git-uri ] dip git-clone-as ;
+: github-ssh-clone-as ( user/org project name -- process ) [ github-ssh-uri ] dip git-clone-as ;
+: github-git-clone ( user/org project -- process ) dup github-git-clone-as ;
+: github-ssh-clone ( user/org project -- process ) dup github-ssh-clone-as ;
+
diff --git a/extra/github/tags.txt b/extra/github/tags.txt
new file mode 100644 (file)
index 0000000..c3de202
--- /dev/null
@@ -0,0 +1 @@
+cloud
diff --git a/extra/hetzner/authors.txt b/extra/hetzner/authors.txt
new file mode 100644 (file)
index 0000000..7c1b2f2
--- /dev/null
@@ -0,0 +1 @@
+Doug Coleman
diff --git a/extra/hetzner/hetzner.factor b/extra/hetzner/hetzner.factor
new file mode 100644 (file)
index 0000000..f2af18f
--- /dev/null
@@ -0,0 +1,81 @@
+! Copyright (C) 2022 Doug Coleman.
+! See http://factorcode.org/license.txt for BSD license.
+USING: assocs assocs.extras formatting http http.client io
+io.encodings.string io.encodings.utf8 json.reader kernel
+namespaces sequences sequences.generalizations ;
+IN: hetzner
+
+SYMBOL: hetzner-access-token
+
+CONSTANT: hetzner-api-v1 "https://api.hetzner.cloud/v1/"
+
+ERROR: hetzner-access-token-required symbol ;
+
+: get-hetzner-token ( -- token/* )
+    hetzner-access-token get [
+        hetzner-access-token hetzner-access-token-required
+    ] unless* ;
+
+: set-hetzner-auth-header ( request -- request )
+    "Bearer " get-hetzner-token append "Authorization" set-header ;
+
+: hetzner-get ( route -- json )
+    hetzner-api-v1 prepend <get-request>
+    set-hetzner-auth-header http-request nip utf8 decode json> ;
+
+! Actions
+: get-hetzner-actions ( -- servers ) "actions" hetzner-get ;
+: get-hetzner-action ( action-id -- servers ) "actions/%d" sprintf hetzner-get ;
+
+! Certificates
+: get-hetzner-certificates ( -- servers ) "certificates" hetzner-get ;
+
+! Datacenters
+: get-hetzner-datacenters ( -- servers ) "datacenters" hetzner-get ;
+: get-hetzner-datacenter ( datacenter-id -- servers ) "datacenters/%s" sprintf hetzner-get ;
+
+! Firewalls
+: get-hetzner-firewalls ( -- servers ) "firewalls" hetzner-get ;
+
+! Floating IPs
+: get-hetzner-floating-ips ( -- servers ) "floating_ips" hetzner-get ;
+
+! Images
+: get-hetzner-images ( -- servers ) "images" hetzner-get ;
+
+! ISOs
+: get-hetzner-isos ( -- servers ) "isos" hetzner-get ;
+: get-hetzner-iso ( iso-id -- servers ) "isos/%d" sprintf hetzner-get ;
+
+! Locations
+: get-hetzner-locations ( -- servers ) "locations" hetzner-get ;
+
+! Networks
+: get-hetzner-networks ( -- servers ) "networks" hetzner-get ;
+
+! Pricing
+: get-hetzner-pricing ( -- servers ) "pricing" hetzner-get ;
+
+! Servers
+: get-hetzner-servers ( -- servers ) "servers" hetzner-get ;
+: get-hetzner-server-by-id ( id -- servers ) "servers/%d" sprintf hetzner-get ;
+
+: server-type. ( hash -- )
+    { "description" "cores" "cpu_type" "memory" "disk" } values-of 5 firstn
+    "%s: %d cores %s,  %dGB RAM, %d GB disk" sprintf print ;
+
+: hetzner-servers. ( -- )
+    get-hetzner-servers "servers" of [ "server_type" of server-type. ] each ;
+
+! Server Types
+: get-hetzner-server-types ( -- servers ) "server_types" hetzner-get ;
+
+! SSH Keys
+: get-hetzner-ssh-keys ( -- servers ) "ssh_keys" hetzner-get ;
+
+! Volumes
+: get-hetzner-volumes ( -- servers ) "volumes" hetzner-get ;
+
+! Volume Actions
+: get-hetzner-volume-actions ( volume-id -- servers ) "volumes/%d/actions" sprintf hetzner-get ;
+: get-hetzner-volume-action ( volume-id action-id -- servers ) "volumes/%d/actions/%d" sprintf hetzner-get ;
diff --git a/extra/hetzner/tags.txt b/extra/hetzner/tags.txt
new file mode 100644 (file)
index 0000000..c3de202
--- /dev/null
@@ -0,0 +1 @@
+cloud
diff --git a/extra/web-services/github/github.factor b/extra/web-services/github/github.factor
deleted file mode 100644 (file)
index 9061ab5..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-! Copyright (C) 2017 Doug Coleman.
-! See http://factorcode.org/license.txt for BSD license.
-USING: assocs cli.git formatting http.client io.pathnames
-json.reader kernel math namespaces sequences ;
-IN: web-services.github
-
-SYMBOL: github-username
-SYMBOL: github-token
-
-! type is orgs, users
-:: get-repositories-with-credentials ( type name username token -- seq )
-    0 [ dup ] [
-        1 + dup
-        [ username token type name ] dip
-        "https://%s:%s@api.github.com/%s/%s/repos?per_page=100&page=%d" sprintf http-get nip json>
-        dup empty? [ 2drop f f ] [ ] if
-    ] produce nip concat ;
-
-: get-repositories ( type name -- seq )
-    github-username get
-    github-token get
-    get-repositories-with-credentials ;
-
-: sync-github-org-or-user ( directory type name -- )
-    get-repositories
-    [ "ssh_url" of ] map sync-repositories ;
-
-: sync-github-org ( directory name -- ) "orgs" swap sync-github-org-or-user ;
-: sync-github-user ( directory name -- ) "users" swap sync-github-org-or-user ;
-
-: github-git-uri ( user/org project -- uri ) [ "git@github.com" ] 2dip "/" glue ":" glue ;
-: github-ssh-uri ( user/org project -- uri ) [ "https://github.com" ] 2dip 3append-path ;
-: github-git-clone-as ( user/org project name -- process ) [ github-git-uri ] dip git-clone-as ;
-: github-ssh-clone-as ( user/org project name -- process ) [ github-ssh-uri ] dip git-clone-as ;
-: github-git-clone ( user/org project -- process ) dup github-git-clone-as ;
-: github-ssh-clone ( user/org project -- process ) dup github-ssh-clone-as ;
-