YAMLïŒãŸãã¯HCL ïŒã䜿çšããŠãç ©éãã軜æžããã³ã¡ã³ããèš±å¯ããããšãã§ããã°çŽ æŽããããšæããŸãã ïŒhttps://github.com/mitchellh/packer/issues/283ãåç §ïŒ
JSONãæ§æ圢åŒã«ããå¿ èŠãããå Žåã¯ãã³ã¡ã³ãã®ãããªããŒ/å€ãèš±å¯ãããšäŸ¿å©ã§ãïŒããããååã®åã«ã³ã¡ã³ãã®ãããªã°ãªããä»ããŠããå ŽåïŒã äŸãã°ïŒ
{
"builders": [
...
],
"provisioners": [
{
"#TODO": "turn this into a puppet manifest",
"type": "shell",
"script": "setup.sh"
},
{
"type": "shell",
"execute_command": "sudo -E /bin/bash '{{ .Path }}'",
"#": "Run as sudo and remove all the things we don't need",
"inline": ["DEBIAN_FRONTEND=noninteractive apt-get -y clean autoremove"]
}
]
}
cc @pandacalculus
HCLã¯ããããã§ãïŒsmileïŒ
@delitescereãã®åé¡ã¯ïŒ283ã®éè€ã§ã¯ãããŸãããïŒ æåã®æçš¿ã§ããªããããã«ãªã³ã¯ããŠããããšã«æ°ã¥ããŸãããã2ã€ã®åé¡ã®éããäœã§ãããã¯æ確ã§ã¯ãããŸããã
ããã§ã¯ãäžæãªããŒã¯çŸåšãšã¯ç°ãªãæ¹æ³ã§åŠçãããŸãã ããã¯ãç¡èŠããããã³ã¡ã³ãã®ãããªãããŒãææ¡ããŸãã ã³ã¡ã³ãæ§ã¯ãäžè¬çã«ç¥ãããŠããèªå·±çµäºã³ã¡ã³ããã¬ãã£ãã¯ã¹ïŒã€ãŸãã #
ã //
ã ;
ïŒã«ãã£ãŠç€ºãããŸãã
éæšæºã®JSONãJSON5ãYAMLãHCLã®ã³ã¡ã³ãããµããŒãããããã«ã³ãŒããå€§å¹ ã«å€æŽãããããšãèãããšãããã¯å¥ã®ææ¡ã§ããã
HCLããµããŒãããããã®ç§»è¡ã«é¢ãã@sethvargoã®ã³ã¡ã³ãã¯ãåé¡ã解決ããŸãã
@sethvargo
HCLã¯ããããã§ãïŒsmileïŒ
ãè¿·æããããããŠç³ãèš³ãããŸããããããã«é¢ããæŽæ°ã¯ãããŸããïŒ
ããã¯ãŸã æ¥ãŠããŸãïŒsmileïŒ
HCLã©ã€ã¿ãŒããŸã ãªãã次ã®ã«ããã«ããŒãžã§ã³ã®ãªãã·ã§ã³ãšããŠpacker fix
ãç¶æãããã®ã§ããããå°ãé
ãããããšã«ããŸããã
HCLã¯ãŒã«ãšã€ãã飲ã¿ãŸããã ïŒ+1ïŒ
https://github.com/hashicorp/hclãååšããããã«ãªã£ãã®ã§ãjsonã®ä»£ãããå ¥æã§ããŸããïŒ :)
ããªãåããååšããŠãã@jevonearth ïŒ smile:ã HCLã¯ãŸã æ¥ãŠããŸãïŒ
ãŸã æ¥ãŠããã®ã§ãããã¯ãªã¯ãšã¹ãã€ã³ã¯ã«ãŒããã¡ã€ã«ããã£ãŒãã£ãŒããè¯ãæ©äŒã§ããïŒ https://github.com/mkheironimus/packergenãåç §ããŠ
@jevonearthã¯ã
ãŸã ããã«æ¥ãïŒ
@mitchellh @sethvargoã¯ããªããèšåããHCLã©ã€ã¿ãŒã§ãïŒ https ïŒ
YAMLãåŸ ã£ãŠããŸãã HCLã«ã¯ããŸãèå³ããªã
ããã«ãŒãbashé¢æ°ã§ã©ãããã yaml
ãjson
å€æããã®ã¯ç°¡åã§ãã
éå§ããã«ã¯ïŒ
ruby -r json -r yaml -e "yaml = YAML.load(File.read(\"$1\")); print yaml.to_json"
ïŒããã³ãã®éïŒ
ruby -r json -r yaml -e "json = JSON.parse(File.read(\"$1\")); print YAML::dump(json)"
ç§ã¯ãã§ã«ãããäœããŸããã ããå¿ èŠããªãã®ã¯ããããšã§ãã ãã®ããããã®ãã±ããã¯HCLçšã«ååšããŸã
2017幎1æ16æ¥ãååŸ12æ31åãRickard vonEssenã®[email protected]ã¯æ¬¡ã®ããã«æžããŠããŸãã
packerãbashé¢æ°ã§ã©ããããyamlãjsonã«å€æããã®ã¯ç°¡åã§ãã
éå§ããã«ã¯ïŒ
ruby -r json -r yaml -e "yaml = YAML.loadïŒFile.readïŒ\" $ 1 \ "ïŒïŒ; print yaml.to_json"
ïŒããã³ãã®éïŒruby -r json -r yaml -e "json = JSON.parseïŒFile.readïŒ\" $ 1 \ "ïŒïŒ; print YAML :: dumpïŒjsonïŒ"
â
ããªããã³ã¡ã³ãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGitHubã§è¡šç€ºããããã¹ã¬ããããã¥ãŒãããŠãã ããã
HashiCorpã¯ãããèªäœã«å°ãã®ä¿¡é Œã瀺ããå¯èœãªéãHCLã䜿çšããå¿ èŠããããŸãã HCLã¯è¯ãã¢ã€ãã¢ã§ãããããã䜿çšããŠå®è¡ããå¿ èŠããããŸãããŸãã¯ãHCLãééãã§ãããTerraformã¯çœå®³ã§ãã æããã«åŸè ã¯çå®ã§ã¯ãããŸããã ã§ããããæ°ããè©äŸ¡è /æ¡çšè ãšããŠãããã2ã€ã®è£œåããäºãã«è©±ãåããªã2ã€ã®è«å ±æ©é¢ãã®ããã«æããããããšãæžå¿µã®åå ã§ãããšèšããããåŸãŸããã
ç§ã¯@sethvargoãšäžç·ã§ãã ãã€ã¢ãŠã«ãã®å°ç« ã身ã«ã€ããŠããHCLããã£ãŠããããšå®£èšããŸãããã ïŒããã ãã§ãªãããããå®çŸãããŸããïŒ
éŽã¹ãã®ã³ã¡ã³ããJSONã«å€æŽããå¿ èŠã¯ãããŸããã ãœãªã¥ãŒã·ã§ã³ã¯DouglasCrockfordã«ãã£ãŠæäŸãããThe Notorious Two EightThreeã®NicholasChammasã«ãã£ãŠäŸç€ºãããŸããhttps://github.com/mitchellh/packer/issues/283#issuecomment-60039068
Rubyãã€ããŒã¯åœŒãã«YAMLãæããæåããããã䜿çšããããã®ãœãªã¥ãŒã·ã§ã³ãæäŸããŠãããŸããã ããã¯ãRickard von Essen2ã³ã¡ã³ãåã®https://github.com/mitchellh/packer/issues/1768#issuecomment-272921740ã«ãã£ãŠèŠäºã«äŸèšŒãããŸããïŒãã ãã以äžã®ããã«ARGF.read
ã䜿çšããããšããå§ãããŸãïŒ
HashiCorpã䜿çšãããšãå¿ èŠãªæ°ã®è£œåãç°¡åã«äœ¿çšã§ããã®ãæ°ã«å ¥ã£ãŠããŸãã ããã¯ãunixå²åŠïŒPeter H.SalusãUnixã®ååäžçŽïŒ1994ïŒã§èŠçŽãããã®ïŒãšããäžèŽããŸãã
$ cat > example.json <<'EOF'
// from: https://www.packer.io/intro/getting-started/vagrant.html
{
// can't we take this out?
"variables": {
"aws_access_key": "", // why is this blank?
"aws_secret_key": "" // ditto
},
"builders": [{
"type": "amazon-ebs",
"access_key": "{{user `aws_access_key`}}",
"secret_key": "{{user `aws_secret_key`}}",
"region": "us-west-2",
"source_ami": "ami-b7a114d7",
"instance_type": "t2.micro",
"ssh_username": "ubuntu",
"ami_name": "packer-example {{timestamp}}",
"tags": {
"created_by": "Packer.io/example"
}
}],
"provisioners": [{
"type": "shell",
"inline": [
"sleep 30",
"sudo apt-get update",
"sudo apt-get install -y redis-server"
]
}],
"post-processors": ["vagrant"]
}
EOF
$ packer validate <(jsmin < example.json)
Template validated successfully.
$ cat > example.yaml <<'EOF'
---
# from: https://www.packer.io/intro/getting-started/vagrant.html
# can't we take this out?
variables:
aws_access_key: '' # why is this blank?
aws_secret_key: '' # ditto
builders:
- type: amazon-ebs
access_key: '{{user `aws_access_key`}}'
secret_key: '{{user `aws_secret_key`}}'
region: us-west-2
source_ami: ami-b7a114d7
instance_type: t2.micro
ssh_username: ubuntu
ami_name: packer-example {{timestamp}}
tags:
created_by: Packer.io/example
provisioners:
- type: shell
inline:
- sleep 30
- sudo apt-get update
- sudo apt-get install -y redis-server
post-processors:
- vagrant
EOF
$ packer validate <(ruby -r json -r yaml -e "print YAML.load(ARGF.read).to_json" < example.yaml)
Template validated successfully.
ç§ã¯yamlãã³ãã¬ãŒãçšã®å°ããªprãäœæããŠããŸããéããããã¹ãã§ã¯ãåé¡ãªãåäœããŸãã
ééããªãç§ãã¡ã調æ»ããããšãèšç»ããŠããäœãã ãã ããä»ã®ãšãããããã¯1.0ã察象ãšããŠãããã®ã§ã¯ãªãããããããéããŸãã 1.0ã®è©³çŽ°ã«ã€ããŠã¯ãã¡ãŒãªã³ã°ãªã¹ããåç §ããŠãã ããã
åé¡ãåéããæãæ¥ãŸããã ééããªããHCLã¯Packerã®ããã©ã«ãã®æ§æèšèªã§ããå¿ èŠããããŸãã
PSïŒã»ãšãã©ãã¹ãŠã®åé¡ã解決ãããçç±ã¯ãŸã ããããŸãããåé¡ã管çããããã®ãããžã§ã¯ãããã€ã«ã¹ããŒã³ãã¿ã°ããããŸãã
ããã¯ç§ãã¡ãèšç»ããŠããããšã§ãã éåžžã«å€§èŠæš¡ãªãªãŒããŒããŒã«ãªã®ã§ã確å®ã«ããŸãããããã«ããããšæããŸãã 次ã®ã¹ãããã¯ãRFCããã»ã¹ãå®è¡ããããšã§ããããã¯ãå¥ã®åé¡ã«ãªããŸãã
JSON5ãYAMLãHCLãæè¿ããŸãã çŽç²ãªJSONã¯èŠçã§ãã
@ darkn3rdç§ãã¡ã¯ããªãã®çã¿ãæããŠãããJoyentãmaster
ã远跡ããJSON5ãã©ã³ããç¶æããã®ã«ååãªçã¿ãæããŠããŸããçŸåšã®ç¶æ³ã¯ãå®éã«å€§éã®ããã«ãŒãã³ãã¬ãŒãã䜿çšããã³ç¶æããŠãã人ã«ã¯åãå
¥ããããªãããã§ãã //github.com/joyent/packer/tree/f-json5
/ meã¯ãä»é±ãã©ã³ããæŽæ°ããããã®ã¡ã³ã¿ã«ããŒããäœæããŸã
ç§ãã¡ã¯ãããããæ¥ããã®3幎è¿ãã§ã...ç§ã¯ããã«ãŒã®åå¿è ã§ãããæ§ããã«èšã£ãŠããHCLããµããŒãããŠããªãããšã«é©ããŠããŸãã ããããã¹ãããã®ãåŸ ã€ããšã¯ã§ããŸããã
åéã«ããã®ã²ã©ãjsonãHCLã«ç§»è¡ããŸããããã¯ãhashicorpããŒã«ã§ãããïŒããšèšã£ããšããã§ãã ç§ã¯ã©ãã»ã©ééã£ãŠããã®ã...
èå³ãããå Žåã¯ã yacker
ïŒPythonãŠãŒãã£ãªãã£ïŒãPackerãYAMLããJSONãžã®ã€ã³ã¿ãŒããªã¿ãŒã§ã©ããããŸãã ããã¯é©ãã¹ãããšã§ã¯ãããŸãããPackerã«å¶åŸ¡ãæž¡ãåã«ããã³ãã¬ãŒããã¡ã€ã«ãšå€æ°ãã¡ã€ã«ãäžæçã«JSONã«å€æããYAMLã©ãããŒãæäŸããã ãã§ãã
ããã«ãŒããŒã ïŒ ãªããŸã HCLãæäŸããªãã®ã§ããïŒ ç§ã¯ã»ãŒ1幎åã«YAMLãµããŒãçšã®å°ããªããããäœæããŸããããããã¯æ£åžžã«æ©èœããHCLãæ¥ããšããçç±ã§ãããæåŠããŸãã ãããã幎ãçµãŠãäœãå€ãããŸããã§ããïŒ
ããªããèšãããšïŒ
ãŸã æ¥ãïŒãŠã£ã³ã¯ïŒ
@ vtolstov ïŒ7023ãåç §
HashiCorpã®ç€Ÿå 補åæ åœè ã¯ãHCL1ãçŽæ¥ã¹ãããããŠã代ããã«HCL2ãå®è£ ããããšã決å®ããŸããã ç³ãèš³ãããŸããããããã¯å®è£ ãããŠããŸããããçŸåšHCL2ãµããŒãã«ç©æ¥µçã«åãçµãã§ããããšããçŽæããŸãã
æŽæ°ããŠããã ãããããšãããããŸãã ç§ãã¡ã¯ããããããããŠããŸããã
ããããšã@SwampDragonsïŒ ããã掻çºã«åãçµãã§ããããšãèãããšããã®åé¡ãåéããå¿ èŠããããŸããïŒ
ããèŠç¹ã; é¢é£ããPRãããŒãžããã«éãããšãã«ã誀ã£ãŠéããããŸããã
ããã«ãŒã«ããHCL2ã®ãµããŒãã«æ¬åœã«è奮ããŠããŸãïŒ
@SwampDragons HCLã«é¢ãããã¥ãŒã¹ã¯ãããŸããïŒ
1.5.0ãªãªãŒã¹ã§ãããå®çŸããããšãæãã§ããŸãïŒãã ããçŽæã¯ããŠããŸããïŒã ããŒã ã®ãã©ã³ãã«ã¯å®çšçãªãããã¿ã€ãããããŸããããŸã æŽç·ŽãããŠãããã匷åãããŠããŸããã @ azrãè²å äŒæã
ç§ã¯æ°å¹ŽåŸã«æ»ã£ãŠããŸããããããããŸã éããŠããããšã«é©ããŸããã
1.5ã§é 調ã«é²ãã§ããããšãããããæããŸãã
@SwampDragons 1.5.0ãïŒããŒã¿çãšããŠãïŒå©çšå¯èœã«ãªãææã«ã€ããŠã倧ãŸããªæéæ ã¯ãããŸããïŒ
å€æŽãè€éãªå ŽåïŒãããŠããã«ã¯éåžžã«æ£åœãªçç±ããããããããŸããïŒãå®å šã«åªããããŒã«ããã®ãŸãŸã«ããŠãã³ã¢å®çŸ©åœ¢åŒãå€æŽããã®ã§ã¯ãªããå€æãã_adapters_ãæäŸããæ¹ãéçºãªã¹ã¯ãšã³ã¹ããã¯ããã«äœãã®ã§ã¯ãªãã§ããããã format-XããJSONïŒ
ã¡ãã£ãšããèãã
åé¡ã軜èŠããããªãã®ã§ãã³ã¢ãã©ãŒããããå€æŽããéåžžã«éèŠãªçç±ããããããããŸããããããã«è²»ããããŠããæéãšåŽåãèãããšããŠãŒã¶ãŒããã¡ã€ã«ããããžã§ã¯ããšããŠå®çŸ©ããæ¹æ³ã ãã§ããã°ã yackerã®ãããª_èšèªã¢ããã¿ãŒ_ã®å¿ èŠæ§ã¯ãããŸããïŒ
@alanbchristieå ¬å¹³ã@ azrãåãçµãã§ãããããžã§ã¯ãã§ãããçŸåšã芪ã®è³çŠãçµéšããŠããªãããã詳现ã話ãããšã¯ã§ããŸããã ;ïŒåœŒãæ»ã£ãŠããããç§ã¯åœŒã«ãã¿ããªã®ããã«å°ãé²æç¶æ³ã®æŽæ°ãæžãããšãã§ãããã©ããå°ããŸãã
@NickLarsenNZäžåžã«èŠããããŒããããã¯ã10æã11æé ã«èšã£ãŠããŸãã å¿ èŠã«å¿ããŠãè©Šçšå¯èœãªãã«ããã§ãããpingãå®è¡ã§ããŸãã
ç§ã¯ããã«ãŒã«äžæ £ãã§ã...ããããæ£çŽã«èšããšãããã5ã6幎é察åŠãããŠããªãåé¡ã§ãã£ããšããäºå®ã¯ãããªããã£ããããã ãã§ãªããéåžžã«èç«ããããã®ã§ãã
åé¿çãšããŠjq
ã䜿çšããŠã³ã¡ã³ããåé€ãããšãjqã§åé€ããã³ã¡ã³ã1ã€ããšã«99件ã®ã³ã¡ã³ããæžã蟌ãŸããªããªããŸãã
packerã«ãã£ãŠå®è£ ãããjsonããã®ã¿ã¹ã¯ã«é©ããŠããªãããšãäœæ¥ãç¶ããããšãã§ããŸããããã³ã¡ã³ããèš±å¯ããããã³ãŒã/æ§æã®éè€ãä¿é²ããããšããäºå®ïŒãªãpacker jsonãäœæããå¿ èŠãããããã«æããã®ã§ããïŒæ§æã®åå©çšãå¯èœã«ããç䌌ã³ã³ãã€ã©ïŒã
ãã€ãºãæžããããã«ããã¯ãããŠããŸãã @azrãæ»ã£ãŠããŸãããæ©äŒãããã°ãããŒã¿ãã«ãã®æäŸãªã©ããã®åé¡ã«é¢ããææ°æ å ±ãæäŸããŠããããŸãã
ããã«ã¡ã¯ãã¿ããª ïŒ è¯ããã¥ãŒã¹ããããŸãðð
ç§ã¯æè¿ãHCL2ã®åããå®çŸããã®ã«ããªãã®æéãèŠããŸããããããå®è£
ããŠããPRã¯ãïŒ8423ã«ãããŸãã ããã€ãã®ãã€ããªã¯ããã«ãããŸãã
ãã°ãåé¿ããããã«ããŸããŸãªã±ãŒã¹ããã¹ãããããã«æåãå°œãããŠããŸããããã«ããŒ/ããããžã§ããŒ/ãã¹ãããã»ããµãŒããããããããç§ãã¡ã¯å°ããªããŒã ãªã®ã§ãããããã¹ãããããã®å©ãã¯å€§æè¿ã§ãïŒ ãããè©ŠããŠãã°ãèŠã€ããå Žåã¯ã HCLã®ãã°ã§ããããšã瀺ãæ°ããåé¡ãéããŠãã ããã
Packerãã»ããã¢ããããçŸåšã®ïŒå€ãïŒæ¹æ³ã¯åŒãç¶ãæ©èœããçŸåšãå€ãããŒãžã§ã³ãéæšå¥šã«ããã®ã«ååãªèªä¿¡ãæãŠãããã«ãªããŸã§ããã°ããã®éãäž¡æ¹ã®ããŒãžã§ã³ãå®å šã«ãµããŒãããäºå®ã§ãã
hclãã¡ã€ã«ã®äŸ
build {
sources = [
"source.amazon-ebs.first",
]
provisioner "shell" {
inline = [
"sleep 5"
]
}
post-processor "shell-local" {
inline = [
"sleep 5"
]
}
}
source "amazon-ebs" "first" {
// access_key = "{{user `aws_access_key`}}"
// secret_key = "{{user `aws_secret_key`}}"
ami_name = "hcl2-test"
region = "us-east-1"
instance_type = "t2.micro"
kms_key_id = "c729958f-c6ba-44cd-ab39-35ab68ce0a6c"
encrypt_boot = true
source_ami_filter {
filters {
virtualization-type = "hvm"
name = "amzn-ami-hvm-????.??.?.????????-x86_64-gp2"
root-device-type = "ebs"
}
most_recent = true
owners = ["amazon"]
}
launch_block_device_mappings {
device_name = "/dev/xvda"
volume_size = 20
volume_type = "gp2"
delete_on_termination = "true"
}
launch_block_device_mappings {
device_name = "/dev/xvdf"
volume_size = 500
volume_type = "gp2"
delete_on_termination = true
encrypted = true
}
ami_regions = ["eu-central-1"]
run_tags {
Name = "packer-solr-something"
stack-name = "DevOps Tools"
}
communicator = "ssh"
ssh_pty = true
ssh_username = "ec2-user"
associate_public_ip_address = true
}
PSïŒããã¥ã¡ã³ããšå€æ°ã®åŠçãè¿ã¥ããŠããŸãïŒ
ããã¯çŽ æŽããããã¥ãŒã¹ã§ã@azr ãããªããšããŒã ã«æè¬ããŸãã
WRTïŒJSONã®éæšå¥šã
HCL / HCL2ã®çµã¿èŸŒã¿JSONãµããŒãã掻çšããããšãèšç»ããŠããã®ã¯æ£ããã§ããïŒ
json2hclã³ã³ããŒã¿ãŒã¯ãããŸããïŒ Netflix OSSãããHCLã«å€æãããããã«ãŒã¹ã¯ãªãããäœæããŸããã
ã¿ãªããããã®å€æŽã«ã¯ã¯ã¯ã¯ããŠããŸãïŒ
@ darkn3rdãŠãŒã¶ãŒãã³ããŒã貌ãä»ããç·šéäœæ¥ãããŸãè¡ããã«ãã°ããè©Šãããšãã§ããããã«ãããã«ãŒåºæã®ã³ã³ããŒã¿ãŒãå®è¡ããäºå®ã§ãã
@mexisme HCLã©ã€ãã©ãªã¯JSONãå®å šã«ç解ããŸããã圢åŒãå°ãå€æŽãããŠãããããããã€ãã®ç·šéãå¿ èŠã«ãªããŸãã ã³ã³ããŒã¿ãŒã«ãã¡ã€ã«ãJSONïŒãŸãã¯äœãïŒã«å€æãããããšããŸãã
â ïžç§ã®æåã®äŸãå€æŽãããããå°ããã©ãã©ãŒãã³ã°ã®ããã«èŠããŸãã
hclãã¡ã€ã«ã®äŸ
build {
sources = [
"source.amazon-ebs.first",
]
provisioner "shell" {
inline = [
"sleep 5"
]
}
post-processor "shell-local" {
inline = [
"sleep 5"
]
}
}
source "amazon-ebs" "first" {
// access_key = "{{user `aws_access_key`}}"
// secret_key = "{{user `aws_secret_key`}}"
ami_name = "hcl2-test"
region = "us-east-1"
instance_type = "t2.micro"
kms_key_id = "c729958f-c6ba-44cd-ab39-35ab68ce0a6c"
encrypt_boot = true
source_ami_filter {
filters {
virtualization-type = "hvm"
name = "amzn-ami-hvm-????.??.?.????????-x86_64-gp2"
root-device-type = "ebs"
}
most_recent = true
owners = ["amazon"]
}
launch_block_device_mappings {
device_name = "/dev/xvda"
volume_size = 20
volume_type = "gp2"
delete_on_termination = "true"
}
launch_block_device_mappings {
device_name = "/dev/xvdf"
volume_size = 500
volume_type = "gp2"
delete_on_termination = true
encrypted = true
}
ami_regions = ["eu-central-1"]
run_tags {
Name = "packer-solr-something"
stack-name = "DevOps Tools"
}
communicator = "ssh"
ssh_pty = true
ssh_username = "ec2-user"
associate_public_ip_address = true
}
æ°ãããã€ããªã¯ããã«ãããŸã
_ 30æ¥é_â³ã¯ããŒãºãããããããã®åé¡ãããã¯ããŸãã ããã¯ãã¡ã³ãããã¢ã¯ãã£ããªåé¡ãèŠã€ããŠéäžããã®ã«åœ¹ç«ã¡ãŸãã
ããã«é¡äŒŒããŠãããšæãããåé¡ãèŠã€ããå Žåã¯ãæ°ããåé¡ãéããŠåé¡ãã³ãã¬ãŒãã«èšå ¥ããŠãã ãããããã«ãããããã«èª¿æ»ããããã«å¿ èŠãªãã¹ãŠã®è©³çŽ°ãååŸã§ããŸãã
æãåèã«ãªãã³ã¡ã³ã
ããã«ã¡ã¯ãã¿ããª ïŒ è¯ããã¥ãŒã¹ããããŸãðð
ç§ã¯æè¿ãHCL2ã®åããå®çŸããã®ã«ããªãã®æéãèŠããŸããããããå®è£ ããŠããPRã¯ãïŒ8423ã«ãããŸãã ããã€ãã®ãã€ããªã¯ããã«ãããŸãã
ãã°ãåé¿ããããã«ããŸããŸãªã±ãŒã¹ããã¹ãããããã«æåãå°œãããŠããŸããããã«ããŒ/ããããžã§ããŒ/ãã¹ãããã»ããµãŒããããããããç§ãã¡ã¯å°ããªããŒã ãªã®ã§ãããããã¹ãããããã®å©ãã¯å€§æè¿ã§ãïŒ ãããè©ŠããŠãã°ãèŠã€ããå Žåã¯ã HCLã®ãã°ã§ããããšã瀺ãæ°ããåé¡ãéããŠãã ããã
Packerãã»ããã¢ããããçŸåšã®ïŒå€ãïŒæ¹æ³ã¯åŒãç¶ãæ©èœããçŸåšãå€ãããŒãžã§ã³ãéæšå¥šã«ããã®ã«ååãªèªä¿¡ãæãŠãããã«ãªããŸã§ããã°ããã®éãäž¡æ¹ã®ããŒãžã§ã³ãå®å šã«ãµããŒãããäºå®ã§ãã
hclãã¡ã€ã«ã®äŸ
PSïŒããã¥ã¡ã³ããšå€æ°ã®åŠçãè¿ã¥ããŠããŸãïŒ