Commit graph

128 commits

Author SHA1 Message Date
Robert Kaussow
c5c01ddd19
Fix grid column size in pipeline log view (#2336)
Fixes: https://github.com/woodpecker-ci/woodpecker/issues/1832

Before:

<img
src="https://github.com/woodpecker-ci/woodpecker/assets/3391958/cdb91f9e-98b9-4e66-9c64-b90d4e59fb73"
width="500">

After:

<img
src="https://github.com/woodpecker-ci/woodpecker/assets/3391958/ec5e0c4d-545b-4ba0-8550-9e3f6701551f"
width="500">
2023-08-28 00:35:41 +02:00
Robert Kaussow
336c41dd33
add spacing to pipeline feed spinner (#2326)
Ref:
https://github.com/woodpecker-ci/woodpecker/discussions/2162#discussioncomment-6666893

## Before

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/d58b5b1d-92e8-4e06-bcf2-4f726fc606e4)

## After

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/2474992c-988c-4775-ac5f-e38ed05530a4)
2023-08-26 02:27:24 +02:00
qwerty287
81ead7cbf2
Support user secrets (#2126) 2023-08-21 15:04:12 +02:00
qwerty287
06d1f3c92e
Create settings-panel vue component and use InputFields (#2177)
Co-authored-by: 6543 <6543@obermui.de>
2023-08-21 10:23:16 +02:00
qwerty287
35baaa8224
Use browser-native tooltips (#2189)
Replace the `floating-vue` library with the browser-native tooltips.
Reduces `dist` size by 45KB.
2023-08-20 15:07:27 +02:00
qwerty287
f5e9b3df2e
Small improvements to mobile interface (#2202)
1. pipeline step list: do not have a separate scroll container on step
list
2. merge title bars on logs (probably regression of #2140)
2023-08-12 12:36:25 +02:00
qwerty287
bc18ccf721
Show all steps (#2190)
Closes #2178
2023-08-10 10:36:41 +02:00
qwerty287
3bdeb47d8c
Use Vue setup directive (#2165) 2023-08-08 12:22:39 +02:00
qwerty287
9cae5709f9
Fix pipeline config collapsing (#2166) 2023-08-08 11:47:21 +02:00
Robert Kaussow
8f44ca3f3d
Use min/max width for pipeline step list (#2141)
I've also added a min-width to keep the sidebar a bit more readable
before the breakpoint is reached:

Before: 

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/4e76f487-0bfd-416b-9969-9aca42aed629)

After:

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/f936c44e-9952-4eb0-8dc3-95d8c48e8dfb)
2023-08-07 23:32:36 +02:00
Robert Kaussow
09ed637ee5
Add header to pipeline log and always show buttons (#2140)
Fixes:
https://github.com/woodpecker-ci/woodpecker/issues/1314#issuecomment-1649213999
(4.)


![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/8544c683-b856-4938-bb8c-7cd9db0c2de9)

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/53f7ec27-a0fd-4803-8bb4-e89e9ced3601)

That both buttons are shown in the screenshot is only for demonstration.
2023-08-07 22:23:47 +02:00
Robert Kaussow
d28f4923e3
Use fix width for pipeline step list (#2138)
On larger monitors using dynamic width in percent, the step list can
become very wide which makes it hard to read.
2023-08-07 21:49:58 +02:00
qwerty287
67b7de5cc2
Fix UI and backend paths with subpath (#1799)
I'm not sure if this is an ideal fix for this, but it seems to work for
me. If you have another idea just let me know.

Closes #1798 
Closes #1773
2023-08-07 16:05:18 +02:00
qwerty287
0ecaa7074a
Fix missing translation (#2132) 2023-08-07 14:01:44 +02:00
qwerty287
e17d0da2c3
Don't show badge without information (#2130)
Was requested
[here](https://github.com/woodpecker-ci/woodpecker/issues/1314#issuecomment-1477858832)
for queue, but this also applies to agents: Do not show badges that only
show `???` because they don't provide any useful information.
2023-08-07 13:19:51 +02:00
qwerty287
d1c51f4af8
Lazy-load TimeAgo locales (#2094)
1. new translation docs
2. lazy-load TimeAgo locales (used for "x min ago" messages). This 1.
reduces size and 2. provides all languages without adding them manually.
3. Remove DayJS locales, they're unused.
2023-08-03 19:25:12 +02:00
qwerty287
d09c418941
Improve user settings (#2087)
Make the user settings tabbed as well, currently only holding "Settings"
(language) and "API". Can be extended with user secrets (#1739) etc.
later.
![Screenshot 2023-08-02 at 09-56-00
Woodpecker](https://github.com/woodpecker-ci/woodpecker/assets/80460567/15d82800-8a4d-47fe-aa77-33462f63585e)
![Screenshot 2023-08-02 at 09-56-05
Woodpecker](https://github.com/woodpecker-ci/woodpecker/assets/80460567/de2640be-144c-4190-adb6-56d43a38bdda)

---------

Co-authored-by: Robert Kaussow <xoxys@rknet.org>
2023-08-03 11:35:12 +02:00
qwerty287
1a7f7a9427
Allow to disable swagger (#2093)
https://github.com/woodpecker-ci/woodpecker/issues/1944
2023-08-03 02:42:30 +02:00
Robert Kaussow
c36cb9da65
Fix alt text contrast in code boxes (#2089) 2023-08-02 10:36:14 +02:00
Robert Kaussow
dca01e6817
Use consistent woodpecker color scheme (#2003)
Fixes: https://github.com/woodpecker-ci/woodpecker/issues/1079

What do you think about using a consistent `woodpecker` color scheme?
Right now, the `lime` color scheme from windicss is used that does not
really fit the primary color used for the documentation website. I have
used the primary color `#4CAF50` from the docs and created a color
palette with https://palettte.app/:

<details>
  <summary>JSON source</summary>

```Json
[
  {
    "paletteName": "New Palette",
    "swatches": [
      {
        "name": "New Swatch",
        "color": "166E30"
      },
      {
        "name": "New Swatch",
        "color": "248438"
      },
      {
        "name": "New Swatch",
        "color": "369943"
      },
      {
        "name": "New Swatch",
        "color": "4CAF50"
      },
      {
        "name": "New Swatch",
        "color": "68C464"
      },
      {
        "name": "New Swatch",
        "color": "8AD97F"
      }
    ]
  }
]
```

</details>


![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/a254f1e0-ce17-43a9-9e8b-72252296fd6f)

I have added this color scheme to the windicss config and replaced the
use of `lime` in the UI. While `woodpecker-300` would be the primary
color that is used for the docs, I currently use `woodpecke-400` as
primary color for the UI to fix some contrast issues.


![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/7bf751e1-f2a6-481c-bee7-a27d27cf8adb)

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/e5673dc7-81c1-4fd4-bef9-14494bc5aa27)

What do you think? If you would like to stay with the current colors,
that's fine for me, I can just use the custom CSS feature in this case.

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-08-02 09:09:12 +02:00
Robert Kaussow
b824693b0a
Fix wrong repo url used by badges (#2037)
---------

Co-authored-by: 6543 <6543@obermui.de>
2023-07-27 02:08:06 +02:00
Robert Kaussow
c0216deb43
Return to users list after creating a new user (#2029)
Fixes:
https://github.com/woodpecker-ci/woodpecker/issues/1314#issuecomment-1503635132
2023-07-24 19:05:18 +02:00
Anbraten
e5d5ec8b47
Use id to access orgs (#1873)
closes #1743 

fixes: setting secrets for own user namespace

- create org in database
- use orgID for org related APIs

Co-authored-by: 6543 <6543@obermui.de>
2023-07-21 19:45:32 +02:00
Robert Kaussow
37fcc26330
Use unified rounded corners for all elements in the nav bar (#2000)
Nav bar:
![Bildschirmfoto vom 2023-07-15
13-43-18](https://github.com/woodpecker-ci/woodpecker/assets/3391958/addb0064-b230-412c-9aae-fbfa8c39b839)

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/21e08079-864d-425a-a4e3-17009094b2c6)

![image](https://github.com/woodpecker-ci/woodpecker/assets/3391958/433bf33b-2124-434b-9f16-e5f586f4d4ec)

Other icon buttons:
![Bildschirmfoto vom 2023-07-15
13-50-18](https://github.com/woodpecker-ci/woodpecker/assets/3391958/c070b09d-2700-4eac-97ed-b4bef42ea3e6)
2023-07-15 15:47:15 +02:00
Patrick Schratz
004d72a853
Link swagger in navbar (#1984)
fix point 1 from #1944 

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2023-07-13 20:34:02 +02:00
qwerty287
a778b5fb90
Do not use window.WOODPECKER_* variables directly (#1992)
use the config helper instead
2023-07-13 15:57:50 +02:00
runephilosof-karnovgroup
5d72060bbd
Fix selected line highlighting (#1922)
Also, extract logic to function
2023-07-06 19:49:21 +02:00
runephilosof-karnovgroup
a4cfa3a242
Jump to linked log line (#1852)
Co-authored-by: Patrick Schratz <patrick.schratz@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
2023-07-03 15:06:10 +02:00
Timo Tomasini
eb5c48a85f
Store agent ID in config file (#1888) 2023-07-02 17:22:05 +02:00
qwerty287
0e25d6d35a
pnpm update (#1902)
Using a simple `pnpm update` didn't fix any of the issues in #1900 but
it fixes some vulnerabilities shown with `pnpm audit`. I didn't try to
force-update `semver` to fix the security vulnerability there.

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-07-02 12:47:36 +02:00
Anbraten
3d435a9cb7
Fix log view (#1874)
closes #1857
closes #1520
closes #1879 
- fixes unicode log lines as reported in matrix

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-07-01 18:55:00 +02:00
qwerty287
3033abc3b4
Add own workflow model (#1784)
Closes #1287

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-06-27 18:01:18 +02:00
Anbraten
ff01a9ff1d
Access repos by their ids (#1691)
closes #1295 
closes #648

# TODO
- [x] add new routes with `:repoID`
- [x] load repo in middleware using `:repoID` if present
- [x] update UI routes `:owner/:name` to `:repoID`
- [x] load repos using id in UI
- [x] add lookup endpoint `:owner/:name` to `:repoID`
- [x] redirect `:owner/:name` to `:repoID` in UI
- [x] use badge with `:repoID` route in UI
- [x] update `woodpecker-go`
- [x] check cli
- [x] add migrations / deprecation notes
- [x] check if #648 got solved directly
- [x] Test
  - [x] create repo
  - [x] repo pages
  - [x] ui redirects
  - [x] forge status links
2023-06-13 01:07:52 +02:00
Anbraten
556607b525
Rework log streaming and related functions (#1802)
closes #1801
closes #1815 
closes #1144
closes  #983
closes  #557
closes #1827
regression of #1791

# TODO
- [x] adjust log model
- [x] add migration for logs
- [x] send log line via grpc using step-id
- [x] save log-line to db
- [x] stream log-lines to UI
- [x] use less structs for log-data
- [x] make web UI work
  - [x] display logs loaded from db
  - [x] display streaming logs
- [ ] ~~make migration work~~ -> dedicated pull (#1828)

# TESTED
- [x] new logs are stored in database
- [x] log retrieval via cli (of new logs) works
- [x] log streaming works (tested via curl & webui)
- [x] log retrieval via web (of new logs) works

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-06-06 09:52:08 +02:00
runephilosof-karnovgroup
ca32517624
PipelineLog.vue: Make it possible to link to a log line (#1775)
Set id attribute of lines to make it possible to link to a pipeline
line, like it was in version 0.9. For instance
https://woodpecker.example.com/org/repo/1#L7
2023-05-28 11:38:27 +03:00
qwerty287
0f9188597e
Initiate Pagination Implementation for API and Infinite Scroll in UI (#1651)
- Add pagination support to the API endpoints that return lists of items
- Adjust UI to enable infinite scrolling via pagination
2023-04-30 03:40:13 +02:00
Jany
3a5e912a6e
Use i18n-t instead of v-html directive (#1676)
Use i18n-t component to avoid v-html directive
and to make localization easier
2023-03-24 09:13:46 +01:00
qwerty287
88d2486ab2
Various UI improvements (#1663)
https://github.com/woodpecker-ci/woodpecker/issues/1314#issuecomment-1475128683

https://github.com/woodpecker-ci/woodpecker/issues/1314#issuecomment-1477858832
(2.)

and the last two tasks from
https://github.com/woodpecker-ci/woodpecker/issues/1314#issue-1418804461

---------

Co-authored-by: Anbraten <anton@ju60.de>
2023-03-21 17:31:24 +01:00
Anbraten
f13ffc2c8f
Save agent-id for tasks and add endpoint to get agent tasks (#1631)
Save which agent is running a task. This is now visible in the admin UI
in the queue and in the agent details screen.

# changes
- [x] save id of agent executing a task
- [x] add endpoint to get tasks of an agent for #999 
- [x] show assigned agent-id in queue
- [x] (offtopic) use same colors for queue stats and icons (similar to
the ones used by pipelines)
- [x] (offtopic) use badges for queue labels & dependencies


![image](https://user-images.githubusercontent.com/6918444/226541271-23f3b7b2-7a08-45c2-a2e6-1c7fc31b6f1d.png)
2023-03-21 15:10:43 +02:00
6543
e28b43ab19
Only inject netrc to trusted clone plugins (#1352)
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: 6543 <6543@obermui.de>
2023-03-20 21:17:49 +01:00
Lauris BH
7870c29f5f
Implement visual display of queue statistics (#1657)
Light mode:

![attels](https://user-images.githubusercontent.com/165205/226354030-5769ddce-3727-441a-8ecb-c6cc3cf70529.png)

Dark mode:

![attels](https://user-images.githubusercontent.com/165205/226353854-51b2da0a-b35a-4f61-bf28-e21179164a05.png)
2023-03-20 18:08:53 +01:00
Anbraten
2337f1854a
Add queue details UI for admins (#1632)
# Changes
- Adds an admin view to see the whole work-queue of the server. 
- The admin can also pause / resume the queue. 
- The view is reloading data every 5 seconds automatically.
- The task model from queue got removed in favor of the one from models.
2023-03-20 04:50:56 +01:00
Lauris BH
4d5c59556e
Update frontend dependencies (#1655)
Also fixes bug that wrong message is displayed when updating user
2023-03-20 00:07:18 +01:00
qwerty287
ade8e6d010
Various fixes and improvements (#1643)
- allow repo names to be case-insensitive
- improve backend error handling on DB get errors (record not found ->
404, else -> 500)
- replace magic numbers of http response codes
- unify the look and feel of cancel / save buttons on forms and view
them in one line

---------

Co-authored-by: Lauris BH <lauris@nix.lv>
2023-03-19 13:52:58 +01:00
Anbraten
25e2c8055c
UI improvements (#1640) 2023-03-18 21:49:12 +01:00
Anbraten
277a839157
Add users UI for admins (#1634)
Co-authored-by: Lauris BH <lauris@nix.lv>
2023-03-18 21:21:20 +01:00
qwerty287
af2ef30205
Fix button margin if button doesn't have text (#1642) 2023-03-18 12:00:49 +01:00
Anbraten
1947408eba
Fix panel height (#1629) 2023-03-16 13:00:41 +01:00
Alexander Matyushentsev
d35ab57f80
Add confirm for secret deletion (#1604)
Closes https://github.com/woodpecker-ci/woodpecker/issues/1483

PR adds a confirmation dialog that warns user before deleting a secret. 


https://user-images.githubusercontent.com/426437/222985225-9e14ddac-6c5a-4aed-ac89-cc6562180ac6.mov


Using just basic
[window.Confirm](https://developer.mozilla.org/en-US/docs/Web/API/Window/confirm)
since it is used in
[other](https://github.com/search?q=repo%3Awoodpecker-ci%2Fwoodpecker+confirm%28&type=code)
places. Any objections to switch to proper dialog component in a
separate PR?

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2023-03-06 07:07:40 +01:00
Hayden
73c47bd2ff
Add collapsable support to panel elements (#1601)
Closes #1312

Updates the `Panel` component to support collapsing 

## Example



https://user-images.githubusercontent.com/64056131/222880570-6611fdd7-4577-4ed5-9798-fce829a4a752.mp4

---------

Co-authored-by: Anbraten <anton@ju60.de>
2023-03-05 07:50:04 +01:00