• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

screwdriver-cd / screwdriver / #3412

12 May 2026 12:11AM UTC coverage: 75.519% (-19.9%) from 95.405%
#3412

Pull #3493

screwdriver

web-flow
Merge branch 'master' into fix_event_meta_update
Pull Request #3493: fix: Exclusive control over meta updates

1703 of 2430 branches covered (70.08%)

Branch coverage included in aggregate %.

13 of 13 new or added lines in 1 file covered. (100.0%)

1057 existing lines in 57 files now uncovered.

4374 of 5617 relevant lines covered (77.87%)

106.76 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

27.27
/plugins/secrets/get.js
1
'use strict';
2

3
const boom = require('@hapi/boom');
1✔
4
const joi = require('joi');
1✔
5
const schema = require('screwdriver-data-schema');
1✔
6
const getSchema = schema.models.secret.get;
1✔
7
const idSchema = schema.models.secret.base.extract('id');
1✔
8

9
module.exports = () => ({
1✔
10
    method: 'GET',
11
    path: '/secrets/{id}',
12
    options: {
13
        description: 'Get a single secret',
14
        notes: 'Returns a secret record',
15
        tags: ['api', 'secrets'],
16
        auth: {
17
            strategies: ['token'],
18
            scope: ['user', 'build', '!guest']
19
        },
20

21
        handler: async (request, h) => {
UNCOV
22
            const { secretFactory } = request.server.app;
×
UNCOV
23
            const { credentials } = request.auth;
×
UNCOV
24
            const { canAccess } = request.server.plugins.secrets;
×
25

UNCOV
26
            return secretFactory
×
27
                .get(request.params.id)
28
                .then(secret => {
UNCOV
29
                    if (!secret) {
×
UNCOV
30
                        throw boom.notFound('Secret does not exist');
×
31
                    }
32

UNCOV
33
                    return canAccess(credentials, secret, 'push', request.server.app).then(showSecret => {
×
UNCOV
34
                        const output = secret.toJson();
×
35

UNCOV
36
                        if (!showSecret) {
×
UNCOV
37
                            delete output.value;
×
38
                        }
39

UNCOV
40
                        return h.response(output);
×
41
                    });
42
                })
43
                .catch(err => {
UNCOV
44
                    throw err;
×
45
                });
46
        },
47
        response: {
48
            schema: getSchema
49
        },
50
        validate: {
51
            params: joi.object({
52
                id: idSchema
53
            })
54
        }
55
    }
56
});
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc