Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View hennevogel's full-sized avatar
🍻
Ewiger Feierabend

Henne Vogelsang hennevogel

🍻
Ewiger Feierabend
View GitHub Profile
require ["copy","fileinto","imap4flags"];
# rule:[alerts]
if anyof (header :contains "subject" "[obs-errors] (100) [OBS Frontend][production]", header :contains "subject" "(100) [api.suse.de][production]", exists "X-Errbit-Comment-Author", header :is "subject" "[obs-errors] Job obs-server has exited with state 'failed'", header :contains "subject" "[obs-errors] Build failed in openQA", header :contains "subject" "[obs-errors] Build incomplete in openQA")
{
fileinto :copy "INBOX/alerts";
fileinto "INBOX/notifications";
stop;
}
# rule:[alerts-package-opensuse]
frontend@95ef00803962:/obs/src/api> git status|tail
deleted: spec/cassettes/Webui_SearchController/GET_owner/warns_about_short_search_text.yml
deleted: spec/cassettes/Worker_StatusController/GET_/index/1_1_1.yml
deleted: spec/cassettes/Worker_StatusController/GET_/index/1_1_2.yml
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: spec/models/bs_request_action_spec.rb
require ["copy","fileinto","imap4flags"];
# rule:[alerts]
if anyof (header :contains "subject" "[obs-errors] (100) [OBS Frontend][production]", header :contains "subject" "(100) [api.suse.de][production]", exists "X-Errbit-Comment-Author", header :is "subject" "[obs-errors] Job obs-server has exited with state 'failed'", header :contains "subject" "[obs-errors] Build failed in openQA", header :contains "subject" "[obs-errors] Build incomplete in openQA")
{
fileinto :copy "INBOX/alerts";
fileinto "INBOX/notifications";
stop;
}
# rule:[alerts-package-opensuse]
if allof (header :is "x-mailinglist" "obs-errors", header :contains "x-obs-package" "OBS:Server:Unstable/obs-server", header :is "x-obs-event-type" "build_fail", header :is "x-obs-repository" "openSUSE_42.3/x86_64")

Our Values

We value our customers. By understanding peoples' goals, needs and their limitations. Everything we build and change, everything we do, we do for the people using our product.

We value quality. By taking due time, avoiding shortcuts, pacing ourselves. By being critical of what we do and by welcoming critique from others. We always leave our code base, processes and team better than we have found it.

@hennevogel
hennevogel / gist:8b09f5a107cdca8b03ebdfcbe2f4e4a7
Created February 11, 2019 16:29
disable-failed-cache.patch
diff --git a/src/api/lib/backend/api/build_results/status.rb b/src/api/lib/backend/api/build_results/status.rb
index a685bd5ac3..e19226ff09 100644
--- a/src/api/lib/backend/api/build_results/status.rb
+++ b/src/api/lib/backend/api/build_results/status.rb
@@ -48,10 +48,8 @@ module Backend
# Lists failed package builds in a project
# @return [String]
def self.failed_results(project_name)
- Rails.cache.fetch("failed_results-#{project_name}") do
- response = http_get(['/build/:project/_result', project_name], params: { code: %w[failed broken unresolvable] }, expand: [:code])
{'app/views/webui2/shared/user_or_groups_roles/_add_user_dialog.html.haml':'webui2/shared/dialog_action_buttons',
'app/views/webui2/shared/user_or_groups_roles/_add_group_dialog.html.haml':'webui2/shared/dialog_action_buttons',
'app/views/webui2/shared/user_or_groups_roles/_index.html.haml':'webui2/shared/user_or_groups_roles/list',
'app/views/webui2/shared/user_or_groups_roles/_index.html.haml':'webui2/shared/user_or_groups_roles/add_user_dialog',
'app/views/webui2/shared/user_or_groups_roles/_index.html.haml':'webui2/shared/user_or_groups_roles/list',
'app/views/webui2/shared/user_or_groups_roles/_index.html.haml':'webui2/shared/user_or_groups_roles/add_group_dialog',
'app/views/webui2/shared/user_or_groups_roles/_list.html.haml':'webui2/shared/user_or_groups_roles/delete_dialog',
'app/views/webui2/shared/_repositories.html.haml':'shared/repositories_flag_table',
'app/views/webui2/shared/_repositories.html.haml':'shared/repositories_flag_table',
'app/views/webui2/shared/_repositories.html.haml':'shared/repo
@hennevogel
hennevogel / Scrum2StoryMap.md
Last active September 13, 2018 16:41
From SCRUM to Story Mapping

Definition of Understood

When have we really understood something? What do we need at least to talk about?

  • Really talk about who
  • Really talk about what
  • Really talk about why
  • Talk about what’s going on outside the software
  • Talk about what can go wrong
  • Talk about questions and assumptions
  • Talk about best solutions
@hennevogel
hennevogel / status-api.md
Last active August 28, 2018 09:42
Status API Design

For simplicity I have abbreviated $BUCKET. For instance a Repository get's published a lot of times so it has many $BUCKETs (called Status::RepositoryPublished currently). Checks for a certain Package commit would need the same pattern. On the other hand a BsRequest only get's created once, so it is the $BUCKET.

Use existing routing...

This is how we are currently would do it. We have some special $BUCKET called _status.

Repository

  • GET /build/:project_name/:repository_name/_status -> Status::Checks for latest $BUCKET for Repository
  • GET /build/:project_name/:repository_name/_status/:bucket_id -> List Status::Checks for $BUCKET
  • PUT /build/:project_name/:repository_name/_status/:bucket_id -> Create Status::Checks for $BUCKET
our $publish_fvogt = '/srv/obs/bin/publish_fvogt';
our $publish_hennevogel = '/srv/obs/bin/publish_hennevogel';
our $publishedhook = {
};
{
my @all_dists = qw(openSUSE_Leap_15.0 SLE_15);
foreach my $repo (qw(home:fvogt)) {