{"push_id":2484868766,"size":43,"distinct_size":43,"ref":"refs/heads/develop","head":"23613a289c986480f3315cb4c61262d30fdf1ea6","before":"071044bff9504f0398829c8e56f8a46b39735a37","commits":[{"sha":"47ce0d346e2c529292add6f850d40c92529e3779","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"staging: set smtp_replay to a fake domain\n\nSo we don't have to worry about sending too many failed attempts to a\nreal SMTP server.","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/47ce0d346e2c529292add6f850d40c92529e3779"},{"sha":"2fc3095e62574569e774b9ab3d7020da125b0627","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"lint: ignore emacs backup files","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/2fc3095e62574569e774b9ab3d7020da125b0627"},{"sha":"f83e647793c9fc981b6ccf0de677c0ecb394921b","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"manage: use args.store_dir instead of config.STORE_DIR","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/f83e647793c9fc981b6ccf0de677c0ecb394921b"},{"sha":"5a43ac0a81f871c534ded6e360c663fc217b7e57","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"manage: implement the how_many_submissions_today sub-command","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/5a43ac0a81f871c534ded6e360c663fc217b7e57"},{"sha":"c7cc8421da3df8a9f78a37e852ca650b34e89651","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"testinfra: define staging as a multi-machine context","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/c7cc8421da3df8a9f78a37e852ca650b34e89651"},{"sha":"f8a3c2aaada7c9ccdfc735cf13798a82b0c4dcce","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"ossec: notify the journalist about submissions in the past 24h\n\nA cron job runs daily on the app server and updates the\n\n   /var/lib/securedrop/submissions_today.txt\n\nfile which contains a boolean set to true if submissions were received\nin the past 24h, ascreated by the manage.py were_there_submissions_today\ncommand.\n\nThe OSSEC agent on the app server runs a command daily, displaying\nthe content of /var/lib/securedrop/submissions_today.txt. The output\nof the command is sent to the OSSEC server.\n\nA new rule is defined on the OSSEC server to send a mail to when the\noutput is received from the OSSEC agent running on the app server.\n\nA new procmail rule is definied on the OSSEC server to catch mails\nencrypt mails containing the /var/lib/securedrop/submissions_today.txt\nstring and send them to the email defined by the\njournalist_alert_email ansible variable.\n\nA new set of (optional) ansible variables, similar to\nossec_alert_gpg_public_key, ossec_gpg_fpr, ossec_alert_email are\ndefined: journalist_alert_gpg_public_key, journalist_gpg_fpr,\njournalist_alert_email. They are used to upload a journalist public\nkey to the OSSEC server and inserted into the send_encrypted_alarm.sh\nscript which handles mails received by procmail.\n\nThe modified send_encrypted_alarm.sh script takes one\nargument (journalist or ossec) and dispatches the mail read from\nstdin to the corresponding recipient.\n\nIntegration tests are implemented to verify the following:\n\n  * manage.py were_there_submissions_today\n  * the app OSSEC agent sends a mail to the journalist address\n  * cover all branches of send_encrypted_alarm.sh","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/f8a3c2aaada7c9ccdfc735cf13798a82b0c4dcce"},{"sha":"347cdd9b2d121d3039d8a09dc7e970925e781d17","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"testinfra: remove some OSSEC tests duplicating Ansible","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/347cdd9b2d121d3039d8a09dc7e970925e781d17"},{"sha":"c579d89bdafeca46bf2424b215990a0278feff42","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"testinfra: remove some postfix tests duplicating Ansible\n\nThe original is at install_files/ansible-base/roles/postfix/templates/main.cf","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/c579d89bdafeca46bf2424b215990a0278feff42"},{"sha":"78fe72a93ba8b3834b6e5d547f4e30b216cc0cb5","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"docs: admin and journalist guide regarding daily notifications","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/78fe72a93ba8b3834b6e5d547f4e30b216cc0cb5"},{"sha":"cf851178acdb392b50da5199d4b1d716b5bff371","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: split ValidateEmail out of ValidateOSSECEmail","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/cf851178acdb392b50da5199d4b1d716b5bff371"},{"sha":"ec4a48a5c584f9597cbea52e07cf3ee44c138040","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: test_validate_gpg_key must verify all fingerprints","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/ec4a48a5c584f9597cbea52e07cf3ee44c138040"},{"sha":"85ec7c439a932f29b01338d990e03349d5fe2ef4","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: implement verify_desc_consistency_optional\n\nTo verify the consistency of a sdconfig value in the case where it is\nnot mandatory.","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/85ec7c439a932f29b01338d990e03349d5fe2ef4"},{"sha":"a595209d75017b8df92de9c5d79331ea87ca3dfb","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: cosmetic cleanup moving a constant out of a loop","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/a595209d75017b8df92de9c5d79331ea87ca3dfb"},{"sha":"8a29dec51fa8613861f6b9f61b1d9be5afc95a86","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: add sdconfig journalist_alert_gpg_public_key input","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/8a29dec51fa8613861f6b9f61b1d9be5afc95a86"},{"sha":"23e995587dee5437bfd0355150c6c84414704df0","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: add sdconfig journalist_gpg_fpr input","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/23e995587dee5437bfd0355150c6c84414704df0"},{"sha":"8b841bd90082ae04d529efeaf3f3638053189fbb","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: add sdconfig journalist_alert_email input","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/8b841bd90082ae04d529efeaf3f3638053189fbb"},{"sha":"a30499b374c79258796f0bc2b8e890d5f37a2fc5","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: when present the journalist alert key must be verified","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/a30499b374c79258796f0bc2b8e890d5f37a2fc5"},{"sha":"0713b7692f4b8c69ccae117c69cc4b1fb2e8843b","author":{"name":"Loic Dachary","email":"b6eae37fc74638590e3f9030895d42446505d41b@dachary.org"},"message":"securedrop-admin: when a journalist key is present, the email is required","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/0713b7692f4b8c69ccae117c69cc4b1fb2e8843b"},{"sha":"3c45373b124c6809c64dab81bcd5704d7718093c","author":{"name":"redshiftzero","email":"ce2e028af11e2044175219057c86bc1f3d51e88d@freedom.press"},"message":"Add \"User research evidence\" to issue feature request template\n\nAdding link to the excellent UX wiki page about issue feature requests\nwritten by @belenbarrospena.","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/3c45373b124c6809c64dab81bcd5704d7718093c"},{"sha":"c5aee6f0f03bd238ccabe063626cb741e4a83ec5","author":{"name":"heartsucker","email":"24344c7dfc8c5bcfa048e0bce2fa56822478d5c6@autistici.org"},"message":"pytest fixutres for template filters","distinct":true,"url":"https://api.github.com/repos/pwnchief/securedrop/commits/c5aee6f0f03bd238ccabe063626cb741e4a83ec5"}]}
{"actor":{"display_login":"pwnchief"}}