[ { "name": "packages", "become": true, "ansible.builtin.apt": { "update_cache": true, "pkg": [ "git", "make", "nodejs" ] } }, { "name": "user and directory", "become": true, "ansible.builtin.user": { "name": "{{var_espe_frontend_zackeneule_user}}", "create_home": true, "home": "{{var_espe_frontend_zackeneule_directory}}" } }, { "name": "program | fetch", "ansible.builtin.git": { "repo": "{{var_espe_frontend_zackeneule_git_repository_url}}", "version": "{{var_espe_frontend_zackeneule_git_reference}}", "dest": "/tmp/espe-frontend-repo" } }, { "name": "program | build", "ansible.builtin.command": { "chdir": "/tmp/espe-frontend-repo", "cmd": "tools/build" } }, { "name": "program | deploy", "become": true, "ansible.builtin.shell": { "cmd": "cp --recursive --update /tmp/espe-frontend-repo/build/* {{var_espe_frontend_zackeneule_directory}}/ && chown --recursive {{var_espe_frontend_zackeneule_user}} {{var_espe_frontend_zackeneule_directory}}" } }, { "name": "conf", "become": true, "ansible.builtin.template": { "src": "conf.json.j2", "dest": "{{var_espe_frontend_zackeneule_directory}}/conf.json", "owner": "{{var_espe_frontend_zackeneule_user}}" } } ]