1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- - hosts: some-host
- gather_facts: no
- become: yes
- tasks:
- - name: create volume for telegram token & wikimap export
- docker_volume:
- name: location_guessing_game_telegram_bot_data
- register: data_volume
- - name: store telegram token
- copy:
- dest: '{{ data_volume.volume.Mountpoint }}/telegram-token'
- # https://telegram.me/botfather
- content: !vault |
- # ...
- mode: a=r
- no_log: true
- register: telegram_token
- - name: download wikimap dataset
- get_url:
- url: https://wikimap.toolforge.org/api.php?cat=Vienna&lang=de
- # filename "wget --restrict-file-names=windows" encoded
- dest: '{{ data_volume.volume.Mountpoint }}/api.php@cat=Vienna&lang=de'
- mode: a=r
- register: wikimap_dataset
- - name: bot container
- docker_container:
- name: location_guessing_game_telegram_bot
- # object e24e72aea596e9cfc69bd531d690d11389eb9e2d
- # tag docker/0.1.1-amd64
- image: docker.io/fphammerle/location-guessing-game-telegram-bot@sha256:0ee33594a044f844b8942a6b01e2df29a29ccd093917534bf5e760cf0bed2708
- env:
- TELEGRAM_TOKEN_PATH: '/data/{{ telegram_token.dest | relpath(data_volume.volume.Mountpoint) }}'
- WIKIMAP_EXPORT_PATH: '/data/{{ wikimap_dataset.dest | relpath(data_volume.volume.Mountpoint) }}'
- read_only: yes
- mounts:
- - type: volume
- source: '{{ data_volume.volume.Name }}'
- target: /data
- read_only: yes
- cap_drop: [ALL]
- security_opts: [no-new-privileges]
- cpu_quota: 4000
- cpu_period: 10000
- memory: 128M
- restart_policy: unless-stopped
- state: started
- restart: '{{ telegram_token.changed or wikimap_dataset.changed }}'
|