aboutsummaryrefslogtreecommitdiff
path: root/src/cmdline.opt
AgeCommit message (Collapse)AuthorFiles
2023-10-30Update copyleft datesHEADmasterSergey Poznyakoff1
2021-01-06Update copyright yearsSergey Poznyakoff1
2018-03-15Update copyright yearsSergey Poznyakoff1
2015-02-02New options: --check-permissions and --add-parameterSergey Poznyakoff1
* NEWS: Update. * doc/eclat-stop.1: Update. * doc/eclat.1man: Update. * etc/default.fln: Special handling for DryRunOperation and UnauthorizedOperation codes. * lib/paramlist.c: New file. * lib/Makefile.am (libeclat_a_SOURCES): Add paramlist.c * lib/forlan.c: New function dequote. * lib/libeclat.h (eclat_request_add_param0) (ec2_param_free, ec2_param_list_create) (ec2_param_list_append) (eclat_request_add_param_list): New protos. * lib/reqcreat.c (ec2_param_free): Remove static qualifier. * src/stop-cl.opt: New file. * src/Makefile.am (OPTFILES): Add stop-cl.opt * src/cmdline.opt: New options: --check-permissions and --add-parameter. * src/eclat.c (extra_param): New global. (find_format): print error message if no such format is found. * src/startstop.c (eclat_stop_instance): Use parse_stop_options
2015-01-19New configuration statement authentication-provideSergey Poznyakoff1
* NEWS: Update. * src/config.c: New statement "authentication-provider" * src/eclat.c (authentication_provider): New variable. (main): Select credentials depending on the value of authentication_provider. * src/eclat.h (authentication_provider): New enum and extern.
2015-01-19Initial support for IAMSergey Poznyakoff1
* NEWS: Update. * doc/eclat.1man: Update. * lib/.gitignore: Update. * lib/Makefile.am (libeclat_a_SOURCES): Add new files. * lib/json.h: New file. * lib/jsongrm.y: New file. * lib/jsonlex.l: New file. * lib/yytrans: New file. * lib/libeclat.h (ec2_query) <token>: New member (eclat_query_create): Change signature. * lib/qcreat.c (eclat_query_create): Take security token as 5th argument. * lib/reqsign.c (querysign2): Add security token. * src/cmdline.opt: Update copyright years * src/ec2map.c (ec2_map_get): Pass security token to eclat_query_create. * src/eclat.c (security_token): New variable. (eclat_do_command): Pass security token to eclat_query_create. (main): Get authentication credentials from the instance store, if not found in the access file. * src/eclat.h (security_token): New extern. (eclat_get_instance_creds): New proto. * src/util.c (eclat_get_instance_zone): Use json parser. (eclat_get_instance_creds): New function. * tests/Makefile.am (noinst_PROGRAMS): add tjson * tests/tjson.c: New file.
2014-02-03Update copyright yearsSergey Poznyakoff1
2013-05-04Bugfixes.Sergey Poznyakoff1
* src/cmdline.opt: Add closing double-quote in the -D preprocessor option. * src/util.c (translate_ids): Do not bail out if the map is not defined.
2013-04-26Improve ID mapping.Sergey Poznyakoff1
* doc/eclat.conf.5: Update. * src/cmdline.opt: New option --no-translate (-X) * src/config.c (eclat_kw): New statement: translate. * src/eclat.c (main): override the value of translation_enabled from the command line. * src/eclat.h (translate_option): Rename to translation_enabled. All uses changed. (MAP_IMAGE,MAP_INSTANCE) (MAP_GROUPID,MAP_GROUPNAME) (MAP_SNAPSHOT,MAP_VOLUME) (MAP_AZ,MAP_REG): New defines, to use instead of literal map names. All sources updated accordingly. * src/util.c (translate_option): Rename to translation_enabled. (translate_ids): It is not an error if the name is not found in the map. Use it as the resource ID in that case.
2013-04-25Provide additional m4 magic for creating cl interfaces.Sergey Poznyakoff1
* src/Makefile.am (EXTRA_DIST): Add eclatcl.m4 * src/eclatcl.m4: New file. * src/detvol-cl.opt: Rename to src/devol-cl.opt * src/cmdline.opt: Fix a typo * src/allocaddr-cl.opt: Rewrite usning new m4 macros. * src/asscaddr-cl.opt: Likewise. * src/cpimg-cl.opt: Likewise. * src/cpsnap-cl.opt: Likewise. * src/disasaddr-cl.opt: Likewise. * src/freeaddr-cl.opt: Likewise. * src/lsaddr-cl.opt: Likewise. * src/lsattr-cl.opt: Likewise. * src/lsimg-cl.opt: Likewise. * src/lsistat-cl.opt: Likewise. * src/lssg-cl.opt: Likewise. * src/lssnap-cl.opt: Likewise. * src/lstag-cl.opt: Likewise. * src/mkimg-cl.opt: Likewise. * src/mkinst-cl.opt: Likewise. * src/mktags-cl.opt: Likewise. * src/mkvol-cl.opt: Likewise. * src/allocaddr.c: Update calls to parse_options. * src/asscaddr.c: Likewise. * src/cpimg.c: Likewise. * src/cpsnap.c: Likewise. * src/devol.c: Likewise. * src/disasaddr.c: Likewise. * src/freeaddr.c: Likewise. * src/lsaddr.c: Likewise. * src/lsattr.c: Likewise. * src/lsimg.c: Likewise. * src/lsistat.c: Likewise. * src/lssg.c: Likewise. * src/lssnap.c: Likewise. * src/lstag.c: Likewise. * src/mkimg.c: Likewise. * src/mkinst.c: Likewise. * src/mktags.c: Likewise. * src/mkvol.c: Likewise.
2013-04-20Implement new command - lsattr. Improve docs.Sergey Poznyakoff1
The lsattr command combines the functionality of lsiattr and lssattr.
2013-04-20Major rewrite. Provide short names for each command.Sergey Poznyakoff1
2013-02-09Read default options from the environment variable ECLAT_OPTIONS.Sergey Poznyakoff1
* src/cmdline.opt (process_options): Process the value of the environment variable ECLAT_OPTIONS prior to the actual command line options. * src/eclat.c (main): Update invocation of process_options. * doc/eclat.1: Update.
2013-01-19Update copyright years.Sergey Poznyakoff1
2012-12-07Re-implement confirmation support.Sergey Poznyakoff1
* doc/eclat-delete-volume.1: Update. * doc/eclat-release-address.1: Update. * doc/eclat.1: Update. * doc/eclat.conf.5: New section "CONFIRMATION" * lib/getyn.c (eclat_vgetyn): Negative default stands for no default at all. * lib/confirm.c (eclat_confirm_mode): Remove. (eclat_confirm): Change signature. Act according to the first argument. * lib/libeclat.h (eclat_confirm_mode): New enum. (eclat_confirm): Change signature. * src/cmdline.opt: Change handling of -Y and -N options. * src/config.c: New statement "confirm". * src/cretags.c: Remove call to eclat_confirm. This is done by the caller. * src/delvol.c: Likewise. * src/reladdr.c: Likewise. * src/eclat.c (confirm_mode): New variable. (command) <flags>: New member. (cmdtab): Mark commands with appropriate flags. (main): Call eclat_confirm to confirm the command. * src/eclat.h (confirm_mode): New extern. (set_command_confirmation): New proto. * etc/eclat.cfin: Set a reasonably safe confirmation default. * lib/forlan.c (strtots): Remove unused variable.
2012-12-05Implement release-address.Sergey Poznyakoff1
* TODO: Update. * doc/Makefile.am: Add new files. * doc/eclat-allocate-address.1: New file. * doc/eclat-release-address.1: New file. * doc/eclat-associate-address.1: Update. * doc/eclat-describe-addresses.1: Update. * doc/eclat-disassociate-address.1: Update. * doc/eclat.1: Update. * etc/Makefile.am: Add new files. * etc/release-address.fln: New file. * lib/Makefile.am: Add new files. * lib/confirm.c: New file. * lib/getyn.c: New file. * lib/libeclat.h (eclat_getyn,eclat_vgetyn) (eclat_confirm): New protos. (eclat_confirm_mode): New extern. * src/Makefile.am: Add new files. * src/cmdline.opt: New options -Y (--yes) and -N (--no). * src/eclat.c: Register the release-address command. * src/eclat.h (EX_CANCELLED): New constant. (eclat_release_address): New proto. * src/reladdr-cl.opt: New file. * src/reladdr.c: New file.
2012-10-16Provide configuration statements for SSL control.Sergey Poznyakoff1
* doc/eclat.conf.5: Document new configuration statements. * src/cmdline.opt (replvar): Change structure. (replace_int_var): New function. * src/config.c: Use "ssl" as a block or scalar statement. * src/eclat.c (ssl_verify_peer, ssl_ca_file) (ssl_ca_path): New variables. (main): Set up SSL configuration. * src/eclat.h (ssl_verify_peer, ssl_ca_file) (ssl_ca_path): New protos.
2012-10-09Implement test map mode.Sergey Poznyakoff1
* src/cmdline.opt: New options: --map, --test-map * src/eclat.c: Implement test map mode. (test_map_name): New variable. * src/eclat.h (test_map_name): new extern. * src/util.c (custom_map): New variable. (translate_ids): Use custom_map if specified.
2012-10-07Implement resource identifier mapping.Sergey Poznyakoff1
Resource identifier mapping permits to use more customized identifiers instead of the Amazon resource identifiers. For instance, you can use hostnames instead of the instance IDs, etc. * lib/Makefile.am: Add new files. * lib/filemap.c: New file. * lib/map.c: New file. * lib/libeclat.h (eclat_map_drv,eclat_map): New structs. (eclat_map_status): New enum. (eclat_map_init,eclat_map_lookup,eclat_map_config) (eclat_map_free,eclat_map_open,eclat_map_close) (eclat_map_get,eclat_map_strerror,eclat_map_drv_register) (eclat_map_foreach,eclat_map_free_all) (eclat_get_string_node): New protos. (eclat_map_drv_file): New extern. * src/accfile.c (access_file_lookup): Fix memory leak. * src/cmdline.opt: New option: --translate (-x) * src/config.c (eclat_kw) <map>: New block statement. (config_finish): Parse map configs. * src/asscaddr.c: Translate key. * src/dscrinstattr.c: Likewise. * src/dscrinsts.c: Likewise. * src/dscrinststat.c: Likewise. * src/dscrsecgrps.c: Likewise. * src/getconout.c: Likewise. * src/startinst.c: Likewise. * src/eclat.c (main): Initialize maps and free them when no more needed. * src/eclat.h (translate_option): New extern. (translate_ids): New proto. * src/util.c (translate_option): New variable. (translate_ids): New function.
2012-10-01Fix disassociate-address to work with VPC addresses. Improve docs.Sergey Poznyakoff1
2012-10-01Improve command matchingSergey Poznyakoff1
* src/eclat.c (name_matches): New function. (find_command_name): Use it. (main): Handle --match-commands. * src/cmdline.opt: New option: --match-commands. * doc/eclat.1: Document new command matching algorithm.
2012-10-01Implement exit; add some docs.Sergey Poznyakoff1
* Makefile.am (SUBDIRS): Add doc. * configure.ac: Build doc/Makefile * doc/Makefile.am: New file. * doc/eclat-associate-address.1: New file. * doc/eclat.1: New file. * etc/associate-address.fln: Call exit if the request fails. * etc/default.fln: Call exit if error is returned or if the response is not recognized. * lib/forlan.c (forlan_eval_env) <exit_code>: New member. New built-in function: exit. (forlan_run): Return exit code. * lib/forlan.h (forlan_run): Change return type. * lib/forlanlex.l: Treat unquoted decimal number as a quoted string. * src/asscaddr-cl.opt: Minor changes. * src/cmdline.opt: Minor changes. * src/eclat.c: Return EX_NOPERM on unsufficient permissions to open the configuration file. * tests/exit.at: New file. * tests/Makefile.am: Add new files. * tests/testsuite.at: Include new test cases. * tests/tforlan.c: Propagate the return from forlan_run to the shell.
2012-09-30Implement the describe-volumes command.Sergey Poznyakoff1
* etc/Makefile.am (FLNFILES): Add describe-volumes.fln (install-formats): New rule. * etc/describe-volumes.fln: New file. * src/Makefile.am (eclat_SOURCES): Add dscrvols.c (AM_LDFLAGS): Remove. (LDADD): Add $(CURL_LIBS) * src/accfile.c (get_access_creds): Minor changes. * src/cmdline.opt: New option --format-expression. * src/dscrinsts.c: Minor change. * src/dscrvols.c: New file. * src/eclat.c: New command "describe-volumes". * src/eclat.h (eclat_describe_volumes): New proto. * tests/describe-volumes.at: New file. * tests/Makefile.am: Add new file. * tests/testsuite.at: Include new file.
2012-09-28Add user-defined formats.Sergey Poznyakoff1
* etc/Makefile.am: Minor fixes. * src/cmdline.opt: New option --format. Add alias --formfile to --format-file * src/config.c: New configuration statement "define-format". * src/eclat.c (define_format): Rename to set_command_format. All uses changed. (define_format,find_format): New functions (read_format): Compile named format, if supplied with the --format option. * src/eclat.h: Update.
2012-09-28Improve testsuite. Reorganize directory structure.Sergey Poznyakoff1
* Makefile.am (SUBDIRS): Add etc (distuninstallcheck_listfiles): Ignore *.forlan files. * configure.ac: New options --split-format and --format-dir * etc/Makefile.am: New file. * etc/default.fln: New file. * etc/describe-instance-status.fln: New file. * etc/describe-instances.fln: New file. * etc/describe-tags.fln: New file. * etc/eclat.cfin: New file. * etc/flncat.c: New file. * etc/start-instances.fln: New file. * etc/stop-instances.fln: New file. * src/Makefile.am: Remove eclat.conf. It is built in /etc now. * src/eclat.conf: Remove. * src/cmdline.opt: Update. * src/config.c: New configuration statement "format-file". * src/eclat.c (format_file_option): New global. (main): Read format from format-file, if supplied. Expand keywords in its argument. * src/eclat.h (format_file_option): New extern. * tests/.gitignore: Update. * tests/Makefile.am: Add new files. * tests/describe-instance-status.at: New test case. * tests/describe-instances.at: New test case. * tests/describe-tags.at: New test case. * tests/dscrinststat.at: New test case. * tests/start-instances.at: New test case. * tests/stop-instances.at: New test case. * tests/testsuite.at (ECLAT_TEST_FORMAT): New macro. Include new test cases. * tests/trws.c: New file.
2012-09-26Change command line syntax.Sergey Poznyakoff1
The new syntax is: eclat [GLOBAL-OPTIONS] COMMAND [COMMAND-OPTIONS] [ARGS] * grecs: Upgrade. * lib/forlan.c: New forlan function: sort(). * src/.gitignore: Update. * src/Makefile.am: Update. * src/cmdline.opt: Use the nopermute option. * src/dscrtags-cl.opt: New file. * src/descrtags.c: Rename to src/dscrtags.c * src/eclat.c (command): Revamp structure. (eclat_command): Remove. (command_tab): Remove. (cmdtab,cmdcnt): New globals. (main): Change command line syntax. * src/eclat.h (eclat_command): Remove. (eclat_command): Remove. * src/startinst-cl.opt: New file. * src/startinst.c: Include startinst-cl.h. Process the command line options.
2012-09-25Provide default formats for all implemented commands.Sergey Poznyakoff1
* src/cmdline.opt: Work over quoting errors in getopt.m4 * src/eclat.c: In debug level main.10 and higher dump XML to the file eclat.dump.xml. * src/eclat.h (XML_DUMP_FILE_NAME): New define. * src/eclat.conf: Provide default formats for all implemented commands.
2012-09-25Use forlan to format the output.Sergey Poznyakoff1
* lib/forlan.h (forlan_lex_begin): Remove (forlan_lex_from_buffer) (forlan_lex_from_file): New protos. (forlan_parse): Remove. (forlan_parse_bufferm,forlan_parse_file): New protos. * lib/forlangrm.y (forlan_parse): Remove. (forlan_parse_bufferm,forlan_parse_file): New functions. * lib/forlanlex.l (YY_INPUT): Optionally, read input from file. (forlan_lex_begin): Remove (forlan_lex_from_buffer) (forlan_lex_from_file): New functions. * src/cmdline.opt: New options: --format, --sort * src/config.c: New statement: format. * src/eclat.c: Use output format scripts, if provided. * src/eclat.conf: Define output format for DescribeTags. * src/eclat.h: Include forlan.h (define_format): New proto. * tests/tforlan.c: New option: -s
2012-09-22Introduce output formatting languageSergey Poznyakoff1
* configure.ac: Check for lex and yacc. * lib/diag.c: New file (moved from ../src with edits) * lib/forlan.c: New file. * lib/forlan.h: New file. * lib/forlangrm.y: New file. * lib/forlanlex.l: New file. * lib/.gitignore: Add new files. * lib/Makefile.am: Add new file. * lib/libeclat.h: Add diagnostics-related stuff. * src/Makefile.am (eclat_SOURCES): Remove diag.c * src/cmdline.opt (set_program_name): Move to ../lib/diag.c * src/diag.c: Remove (see above). * src/config.c: Reflect changes to the diagnostics subsystem. * src/eclat.c: Likewise. * src/eclat.h: Remove diagnostics-related stuff. It lives in libeclat.h from now on. * src/error.c: Remove. * tests/forlan01.at: New testcase. * tests/testsuite.at: Include forlan01.at * tests/tforlan.c: New file. * tests/.gitignore: Add new files. * tests/Makefile.am: Add new files.
2012-09-20Require libexpat, implement DescribeTags.Sergey Poznyakoff1
* configure.ac: Require libexpat * src/descrtags.c: New file. * src/Makefile.am: Add new files. * src/accfile.c (access_file_lookup): Bugfix (stripped the first byte from the returned access_key). * src/cmdline.opt: New option --describe-tags * src/eclat.c: Register eclat_describe_tags handler. * src/eclat.h: Include expat.h (dry_run_mode): New extern. (eclat_command_describe_tags): New command code. (eclat_describe_tags): New proto. * src/startinst.c: More debugging info. Implement dry-run,
2012-09-19Initial commitSergey Poznyakoff1

Return to:

Send suggestions and report system problems to the System administrator.