summaryrefslogtreecommitdiff
path: root/tests/sources/no-fetch-cached/plugins/sources/always_cached.py
blob: aef13279b2e83791d78b885aedf50bfc4944848c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
"""
always_cached
=============

This is a test source plugin that is always cached.
Used to test that BuildStream core does not call fetch() for cached sources.

"""

from buildstream import Source


class AlwaysCachedSource(Source):
    def configure(self, node):
        pass

    def preflight(self):
        pass

    def get_unique_key(self):
        return None

    def is_resolved(self):
        return True

    def is_cached(self):
        return True

    def load_ref(self, node):
        pass

    def get_ref(self):
        return None

    def set_ref(self, ref, node):
        pass

    def fetch(self):
        # Source is always cached, so fetch() should never be called
        assert False

    def stage(self, directory):
        pass


def setup():
    return AlwaysCachedSource