New Features
AtomicRef Support
Added the following atomicreference commands:
-
clear -
compare-and-set -
contains -
destroy -
get -
get-and-set -
is-null -
set
The following advanced script functions are also supported:
-
atomicreference_clear(name='default') -
atomicreference_compare_and_set(expected:any, value:any, name='default') -
atomicreference_contains(value:any, name='default') -
atomicreference_destroy(name='default') -
atomicreference_get(name='default') -
atomicreference_get_and_set(value:any, name='default') -
atomicreference_is_null(name='default') -
atomicreference_set(value:any, name='default')
Viridian Advanced Script Functions
Added the viridian_api type.
Create an instance using Viridian(API_KEY).
The type has the following methods:
-
create_cluster(name:string, development=False, prerelease=False, wait=False) → Cluster -
list_clusters() → list(Cluster) -
delete_cluster(cluster:id | name | Cluster) -
get_cluster(cluster:id | name | Cluster) → Cluster -
import_config(cluster:id | name | Cluster, name='') → path -
stop_cluster(cluster:id | name | Cluster, wait=False) -
resume_cluster(cluster:id | name | Cluster, wait=False) -
list_custom_classes(cluster:id | name | Cluster) → list(Class) -
upload_custom_class(cluster:id | name | Cluster, path:string, wait=False) -
download_custom_class(cluster:id | name | Cluster, artifact:any, output_path:string) → path -
delete_custom_class(cluster:id | name | Cluster, artifact_id:any, wait=False) -
download_logs(cluster:id | name | Cluster, dir:string) → list(path)
Added the viridian_cluster type with the following attributes:
-
id -
name -
cluster_type -
state -
desired_state -
creation_time -
start_time -
client_count -
hot_backup_enabled -
hot_restart_enabled -
ip_white_list_enabled
Add viridian_custom_class type with the following attributes:
-
id -
name -
status -
temporary_id -
generated_filename
Job Advanced Script Functions
-
job_submit(path:string, params:string*, name='', snapshot='', class_name='') -
job_list(include_sql=False, include_user_cancelled=False) → list(dict) -
job_cancel(job_name_or_id:string, force=False) -
job_restart(job_name_or_id:string, force=False) -
job_suspend(job_name_or_id:string, force=False) -
job_resume(job_name_or_id:string) -
job_export_snapshot(job_name_or_id:string, name:string, cancel=False)
Configuration Advanced Script Functions
-
config_add(config_name_or_path:string, config:dict) → path -
config_list() → list(config_name)
List Advanced Script Functions
-
list_add(value:any, name='default', index=0) -
list_clear(name='default') -
list_contains(value:any, name='default') -
list_destroy(name='default') -
list_remove_index(index:int, name='default') -
list_remove_value(value:any, name='default') -
list_set(index:int, value:any, name='default') -
list_size(name='default')
MultiMap Advanced Script Functions
-
multimap_clear(name='default') -
multimap_destroy(name='default') -
multimap_entry_set(name='default') -
multimap_get(key:any, name='default') -
multimap_key_set(name='default') -
multimap_lock(key:any, name='default', ttl=-1) -
multimap_put(key:any, value:any, name='default') -
multimap_remove(key:any, name='default') -
multimap_size(name='default') -
multimap_try_lock(key:any, name='default', ttl=-1) -
multimap_unlock(key:any, name='default') -
multimap_values(name='default')
Queue Advanced Script Functions
-
queue_clear(name='default') -
queue_destroy(name='default') -
queue_offer(value:any*, name='default') -
queue_poll(name='default') -
queue_size(name='default')
Topic Advanced Script Functions
-
topic_destroy(name='default') -
topic_publish(value:any+, name='default')
Other Advanvced Script Functions
-
object_list(dds:string?, show_hidden=False) → list(object_name) | list(service_name, object_name) -
exit(code:int) -
home() → path -
version() → string -
write(value:any, location:string, format='') -
read(location:string, format='default') -
write_data(data:data, location:string) -
read_data(location:string) -
decode_data(value:data)
Other Features
-
Added doc strings support to advanced scripts. All lines starting with `# doc: ` are doc strings.
-
Added
script listcommand. -
Added the
sqladvanced script command. -
Added the
filetemplate action, which can read from a file with an extension of.yaml,.jsonor.txt. -
Added the
\exitand\echocommands. These commands are available in the script and interactive modes. See the [echo](https://docs.hazelcast.com/clc/latest/echo) and [exit](https://docs.hazelcast.com/clc/latest/exit) command documentation. -
Added
--waitflag toviridiancommands. -
Added the ability to change the interactive mode prompt and banner. See the [def](https://docs.hazelcast.com/clc/latest/def) topic.
Improvements
-
clc demo map-setmanycommand shows a progress bar and is faster for small values. -
\echocommand takes 0 or more arguments. -
Viridian commands display an API key selector if more than one API keys exists.
-
Viridian cluster list is paged.
Changes
-
Project creator uses the
defaultsfield intemplate.yamlinstead of thedefaults.yaml. -
Template name is optional with
clc project createcommand. A selector is displayed if the template name is not specified. -
clc viridian download-logscommand outputs all log paths instead of the parent directory. -
The behaviour of
clc compact serializerwas improved. -
multi-mapis renamed tomultimap. -
atomic-longwas renamed toatomiclong.