aboutsummaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2012-10-14 03:13:00 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2012-10-14 03:13:00 +0300
commit4253839e72aebd5a71684a13d5a40d70cb34e593 (patch)
treecf94f7c0051eb7bbfeed2e62fe9bef63b685adb7 /etc
parent44b7be0657daf7b07c480ee9212a25e045624686 (diff)
downloadeclat-4253839e72aebd5a71684a13d5a40d70cb34e593.tar.gz
eclat-4253839e72aebd5a71684a13d5a40d70cb34e593.tar.bz2
Implement snapshot-management commands.
* TODO: Update. * configure.ac: Update. * doc/eclat.1: Update. * etc/create-snapshot.fln: New file. * etc/delete-snapshot.fln: New file. * etc/describe-snapshots.fln: New file. * etc/Makefile.am: Add new files. * lib/forlan.c (eval_func): Set return type according to that of the called function. (empty,timestamp): New built-in functions. * src/Makefile.am: Add new files. * src/cresnap.c: New file. * src/delsnap.c: New file. * src/dscrsnap-cl.opt: New file. * src/dscrsnap.c: New file. * src/eclat.c: Register new commands. * src/eclat.h: Add new prototypes. * tests/create-snapshot.at: New file. * tests/Makefile.am: Add new file. * tests/testsuite.at: Likewise.
Diffstat (limited to 'etc')
-rw-r--r--etc/Makefile.am3
-rw-r--r--etc/create-snapshot.fln21
-rw-r--r--etc/delete-snapshot.fln22
-rw-r--r--etc/describe-snapshots.fln29
4 files changed, 75 insertions, 0 deletions
diff --git a/etc/Makefile.am b/etc/Makefile.am
index 3ccb0f4..bf58e88 100644
--- a/etc/Makefile.am
+++ b/etc/Makefile.am
@@ -18,13 +18,16 @@ noinst_PROGRAMS = flncat
FLNFILES=\
associate-address.fln\
+ create-snapshot.fln\
create-tags.fln\
+ delete-snapshot.fln\
delete-tags.fln\
describe-addresses.fln\
describe-instance-attribute.fln\
describe-instance-status.fln\
describe-instances.fln\
describe-security-groups.fln\
+ describe-snapshots.fln\
describe-tags.fln\
describe-volumes.fln\
disassociate-address.fln\
diff --git a/etc/create-snapshot.fln b/etc/create-snapshot.fln
new file mode 100644
index 0000000..4fa2594
--- /dev/null
+++ b/etc/create-snapshot.fln
@@ -0,0 +1,21 @@
+/* This file is part of Eclat.
+ Copyright (C) 2012 Sergey Poznyakoff.
+
+ Eclat is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ Eclat is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Eclat. If not, see <http://www.gnu.org/licenses/>. */
+
+if (.CreateSnapshotResponse) {
+ let resp = .CreateSnapshotResponse;
+ print(resp.snapshotId,"\t",resp.volumeId," ",resp.volumeSize,"\t",
+ resp.status,"\t",resp.progress,"\t",resp.startTime,"\n");
+}
diff --git a/etc/delete-snapshot.fln b/etc/delete-snapshot.fln
new file mode 100644
index 0000000..5c627e1
--- /dev/null
+++ b/etc/delete-snapshot.fln
@@ -0,0 +1,22 @@
+/* This file is part of Eclat.
+ Copyright (C) 2012 Sergey Poznyakoff.
+
+ Eclat is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ Eclat is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Eclat. If not, see <http://www.gnu.org/licenses/>. */
+
+if (.DeleteSnapshotResponse.return) {
+ if (!.DeleteSnapshotResponse.return[true]) {
+ error("Return: ",.DeleteSnapshotResponse.return,"\n");
+ exit(1);
+ }
+}
diff --git a/etc/describe-snapshots.fln b/etc/describe-snapshots.fln
new file mode 100644
index 0000000..1e49924
--- /dev/null
+++ b/etc/describe-snapshots.fln
@@ -0,0 +1,29 @@
+/* This file is part of Eclat.
+ Copyright (C) 2012 Sergey Poznyakoff.
+
+ Eclat is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ Eclat is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Eclat. If not, see <http://www.gnu.org/licenses/>. */
+
+if (.DescribeSnapshotsResponse.snapshotSet) {
+ for (var in last.item) {
+ print(var.snapshotId,"\t",var.volumeId," ",var.volumeSize,"\t",
+ var.status,"\t",var.progress,"\t",var.startTime);
+ if (var.description)
+ print("\t", var.description);
+ print("\n");
+ if (!empty(var.tagSet)) {
+ for (tag in var.tagSet.item)
+ print("\t", tag.key,"=",tag.value,"\n");
+ }
+ }
+}

Return to:

Send suggestions and report system problems to the System administrator.