blob: 1c799868e461443e99b9eac2bd2611e11bf9427e [file] [log] [blame]
- name: Check extension_id, credentials.clientId, credentials.refreshToken are set
when: >
extension_id is not defined or credentials.clientId is not defined or
credentials.refreshToken is not defined
fail:
msg: "extension_id, credentials.clientId and credentials.refreshToken must be set"
- name: Build extension
include_role:
name: build-extension
vars:
make_target: release_chromium_canary
- name: Get name of the compiled ZIP file
ansible.builtin.shell:
cmd: "ls -Art | tail -n 1"
chdir: "{{ zuul.project.src_dir }}/out"
register: zip_file
- name: Check the ZIP file name is non-empty
when: zip_file.stdout == ""
fail:
msg: "zip_file.stdout is empty"
- name: Print ZIP file name
when: not (zip_file.stdout == "")
debug:
msg: "zip_file.stdout is \"{{ zip_file.stdout }}\""
- name: Upload and publish the ZIP file to the Chrome Web Store
when: not (dry_run|bool)
ansible.builtin.shell:
cmd: >
chrome-webstore-upload upload --auto-publish --extension-id {{ extension_id }}
--source {{ zip_file.stdout|quote }} --client-id {{ credentials.clientId|quote }}
--refresh-token {{ credentials.refreshToken|quote }}
2>cws-log.txt
chdir: "{{ zuul.project.src_dir }}/out"
no_log: True
register: uploadcmd
failed_when:
- not (uploadcmd.rc == 0 or ('ITEM_NOT_UPDATABLE' in uploadcmd.stderr))